Observe-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
July 2020
- 1 participants
- 91 discussions
[Git][ultreiaio/ird-observe][develop-7.x] 5 commits: Problème de traduction sur les validations taille/poids des espèces - Closes #1571
by Tony CHEMIT 05 Jul '20
by Tony CHEMIT 05 Jul '20
05 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
1e1d39b2 by Tony Chemit at 2020-07-05T14:03:39+02:00
Problème de traduction sur les validations taille/poids des espèces - Closes #1571
- - - - -
56869aeb by Tony Chemit at 2020-07-05T14:03:41+02:00
Pouvoir changer l'espèce d'un enregistrement - See #1565
Rendre toutes les colonnes modifiables dans les modèles de tableau
- - - - -
1ef3123d by Tony Chemit at 2020-07-05T14:03:41+02:00
Pouvoir changer l'espèce d'un enregistrement - See #1565
Rendre toutes les propriétés modifiables dans les formulaires
- - - - -
6feb3c21 by Tony Chemit at 2020-07-05T14:03:41+02:00
Pouvoir changer l'espèce d'un enregistrement - Close #1565
Bien restituer les listes de données pour modification (et non plus juste la valeur sélectionnée)
Revue du focus suite à une modification de ligne dans le tableau
- - - - -
f6db1c0f by Tony Chemit at 2020-07-05T14:03:41+02:00
Amélioration des logs - Closes #1574
- - - - -
30 changed files:
- client-configuration/src/main/resources/log4j2.xml
- client-configuration/src/main/resources/observe-log4j2.xml
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BaitsCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BranchlinesCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/EncounterUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/FloatlinesCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/GearUseFeaturesLonglineTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/GearUseFeaturesLonglineUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/HooksCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/SensorUsedUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/TdrUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/GearUseFeaturesSeineTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/GearUseFeaturesSeineUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectObservedSpeciesUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectSchoolEstimateUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectSchoolEstimateUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUI.jcss
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUI.jcss
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUIHandler.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/99e5728613c8e452124e770f…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/99e5728613c8e452124e770f…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop-7.x] Amélioration des logs - Closes #1574
by Tony CHEMIT 05 Jul '20
by Tony CHEMIT 05 Jul '20
05 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
99e57286 by Tony Chemit at 2020-07-05T13:55:55+02:00
Amélioration des logs - Closes #1574
- - - - -
5 changed files:
- client-configuration/src/main/resources/log4j2.xml
- client-configuration/src/main/resources/observe-log4j2.xml
- server-configuration/src/main/resources/log4j2.xml
- server-configuration/src/main/resources/observeweb-log4j2.xml
- test/src/main/resources/log4j2.xml
Changes:
=====================================
client-configuration/src/main/resources/log4j2.xml
=====================================
@@ -21,7 +21,7 @@
#L%
-->
-<Configuration status="error">
+<Configuration strict="true" status="error">
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/>
@@ -37,57 +37,49 @@
</RollingFile>
</Appenders>
<Loggers>
- <Root level="warn">
- <AppenderRef ref="console"/>
- <AppenderRef ref="File"/>
- </Root>
- <Logger name="fr.ird.observe" level="info" additivity="false">
- <AppenderRef ref="console"/>
- <AppenderRef ref="File"/>
- </Logger>
- <Logger name="org.nuiton" level="warn" additivity="false">
+ <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.topia" level="info" additivity="false">
+ <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false">
+ <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="io.ultreia" level="info" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.hibernate" level="warn" additivity="false">
+ <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false">
+ <Logger name="org.nuiton.topia" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
+ <Logger name="org.hibernate" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
+ <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false">
+ <Logger name="fr.ird.observe" level="info" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false">
+ <Root level="error">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
- </Logger>
+ </Root>
</Loggers>
-</Configuration>
+</Configuration>
\ No newline at end of file
=====================================
client-configuration/src/main/resources/observe-log4j2.xml
=====================================
@@ -21,7 +21,7 @@
#L%
-->
-<Configuration status="error">
+<Configuration strict="true" status="error">
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/>
@@ -37,31 +37,31 @@
</RollingFile>
</Appenders>
<Loggers>
- <Logger name="fr.ird.observe" level="info" additivity="false">
+ <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton" level="warn" additivity="false">
+ <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.i18n.editor" level="info" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.topia" level="info" additivity="false">
+ <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false">
+ <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="io.ultreia" level="info" additivity="false">
+ <Logger name="org.nuiton.topia" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
@@ -69,29 +69,17 @@
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
- <AppenderRef ref="console"/>
- <AppenderRef ref="File"/>
- </Logger>
- <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
- <AppenderRef ref="console"/>
- <AppenderRef ref="File"/>
- </Logger>
- <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false">
- <AppenderRef ref="console"/>
- <AppenderRef ref="File"/>
- </Logger>
- <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false">
+ <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false">
+ <Logger name="fr.ird.observe" level="info" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="io.ultreia.java4all.jaxx.widgets.combobox" level="info" additivity="false">
+ <Root level="error">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
- </Logger>
+ </Root>
</Loggers>
</Configuration>
=====================================
server-configuration/src/main/resources/log4j2.xml
=====================================
@@ -20,50 +20,45 @@
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
-->
-
-<Configuration status="error">
+<Configuration strict="true" status="error">
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/>
</Console>
</Appenders>
<Loggers>
- <Logger name="fr.ird.observe" level="info" additivity="false">
- <AppenderRef ref="console"/>
- </Logger>
- <Logger name="org.nuiton" level="warn" additivity="false">
+ <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.nuiton.topia" level="info" additivity="false">
+ <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false">
<AppenderRef ref="console"/>
- <AppenderRef ref="File"/>
</Logger>
- <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false">
+ <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.debux" level="info" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="io.ultreia" level="info" additivity="false">
+ <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.hibernate" level="info" additivity="false">
+ <Logger name="org.nuiton.topia" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
+ <Logger name="org.hibernate" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
+ <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false">
+ <Logger name="fr.ird.observe" level="info" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false">
+ <Root level="error">
<AppenderRef ref="console"/>
- </Logger>
+ </Root>
</Loggers>
-</Configuration>
+</Configuration>
\ No newline at end of file
=====================================
server-configuration/src/main/resources/observeweb-log4j2.xml
=====================================
@@ -22,7 +22,7 @@
-->
-<Configuration status="error">
+<Configuration strict="true" status="error">
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/>
@@ -38,31 +38,31 @@
</RollingFile>
</Appenders>
<Loggers>
- <Logger name="fr.ird.observe" level="info" additivity="false">
+ <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton" level="warn" additivity="false">
+ <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.topia" level="info" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false">
+ <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.debux" level="info" additivity="false">
+ <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="io.ultreia" level="info" additivity="false">
+ <Logger name="org.nuiton.topia" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
@@ -70,21 +70,17 @@
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
- <AppenderRef ref="console"/>
- <AppenderRef ref="File"/>
- </Logger>
- <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
+ <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false">
+ <Logger name="fr.ird.observe" level="info" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
</Logger>
- <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false">
+ <Root level="error">
<AppenderRef ref="console"/>
<AppenderRef ref="File"/>
- </Logger>
+ </Root>
</Loggers>
</Configuration>
=====================================
test/src/main/resources/log4j2.xml
=====================================
@@ -21,33 +21,45 @@
#L%
-->
-<Configuration status="error">
+<Configuration strict="true" status="warn">
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/>
</Console>
</Appenders>
<Loggers>
- <Logger name="fr.ird.observe" level="info" additivity="false">
+ <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.nuiton.topia" level="info" additivity="false">
+ <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.hibernate" level="info" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false">
+ <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false">
+ <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false">
+ <AppenderRef ref="console"/>
+ </Logger>
+ <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false">
+ <Logger name="org.nuiton.topia" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
- <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false">
+ <Logger name="org.hibernate" level="warn" additivity="false">
<AppenderRef ref="console"/>
</Logger>
+ <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false">
+ <AppenderRef ref="console"/>
+ </Logger>
+ <Logger name="fr.ird.observe" level="info" additivity="false">
+ <AppenderRef ref="console"/>
+ </Logger>
+ <Root level="error">
+ <AppenderRef ref="console"/>
+ </Root>
</Loggers>
</Configuration>
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/99e5728613c8e452124e770f3…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/99e5728613c8e452124e770f3…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop-7.x] 6 commits: Deux coquilles dans les validations - Closes #1572
by Tony CHEMIT 05 Jul '20
by Tony CHEMIT 05 Jul '20
05 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
51e68e52 by Tony Chemit at 2020-07-05T09:40:52+02:00
Deux coquilles dans les validations - Closes #1572
- - - - -
3e940e79 by Tony Chemit at 2020-07-05T10:37:28+02:00
Problème de traduction sur les validations taille/poids des espèces - Closes #1571
- - - - -
63a6b6a5 by Tony Chemit at 2020-07-05T13:03:38+02:00
Pouvoir changer l'espèce d'un enregistrement - See #1565
Rendre toutes les colonnes modifiables dans les modèles de tableau
- - - - -
b49b81b4 by Tony Chemit at 2020-07-05T13:04:33+02:00
Pouvoir changer l'espèce d'un enregistrement - See #1565
Rendre toutes les propriétés modifiables dans les formulaires
- - - - -
14c7ea5e by Tony Chemit at 2020-07-05T13:07:48+02:00
Pouvoir changer l'espèce d'un enregistrement - Close #1565
Bien restituer les listes de données pour modification (et non plus juste la valeur sélectionnée)
Revue du focus suite à une modification de ligne dans le tableau
- - - - -
41c36826 by Tony Chemit at 2020-07-05T13:55:04+02:00
Amélioration des logs - Closes #1474
- - - - -
30 changed files:
- client-configuration/src/main/resources/log4j2.xml
- client-configuration/src/main/resources/observe-log4j2.xml
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BaitsCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BranchlinesCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/EncounterUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/FloatlinesCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/GearUseFeaturesLonglineTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/GearUseFeaturesLonglineUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/HooksCompositionUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/SensorUsedUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/TdrUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/GearUseFeaturesSeineTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/GearUseFeaturesSeineUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseTableModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectObservedSpeciesUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectSchoolEstimateUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectSchoolEstimateUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUI.jcss
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUI.jcss
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUIHandler.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/82cbd449c24922b1cbf24145…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/82cbd449c24922b1cbf24145…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] [LL][Echantillon logbook] Cosmétique (Partie ui)- Closes #1536
by Tony CHEMIT 04 Jul '20
by Tony CHEMIT 04 Jul '20
04 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
feeb5bf5 by Tony Chemit at 2020-07-04T18:27:05+02:00
[LL][Echantillon logbook] Cosmétique (Partie ui)- Closes #1536
- - - - -
30 changed files:
- client-configuration/src/main/i18n/getters/java-enumeration.getter
- client-configuration/src/main/java/fr/ird/observe/client/constants/AcquisitionMode.java
- client-datasource-editor-common/src/main/i18n/getters/java.getter
- client-datasource-editor-common/src/main/i18n/getters/jaxx.getter
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/SampleUI.java
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/SampleUIHandler.java
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/SampleUIModel.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUI.jcss → client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/actions/ResetSizeMeasureType.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleCaptureUI.jcss → client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/actions/ResetWeightMeasureType.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleRejeteUI.jcss → client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/actions/SampleUIActionSupport.java
- client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/ref/common/SpeciesUI.jaxx
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/AbstractSampleUI.jcss → client-datasource-editor-common/src/main/resources/fr/ird/observe/client/datasource/editor/content/data/sample/CommonSample.jcss
- client-datasource-editor-ll/src/main/i18n/getters/jaxx.getter
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/CatchUI.jcss
- + client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SampleImplHandler.java
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUI.jaxx
- − client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUI.jcss
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUIHandler.java
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUIModel.java
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/CatchUI.jaxx
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/CatchUI.jcss
- client-datasource-editor-ps/src/main/i18n/getters/jaxx.getter
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/AbstractSampleUIHandler.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUI.jaxx
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUI.jcss
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUIHandler.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUIModel.java
- + client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleImplHandler.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUI.jaxx
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUIHandler.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/feeb5bf51f33af0f4a3479bf2…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/feeb5bf51f33af0f4a3479bf2…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] [LL][Echantillon logbook] Cosmétique (Partie ui ps)- See #1536
by Tony CHEMIT 04 Jul '20
by Tony CHEMIT 04 Jul '20
04 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
609458e5 by Tony Chemit at 2020-07-04T08:32:24+02:00
[LL][Echantillon logbook] Cosmétique (Partie ui ps)- See #1536
- - - - -
11 changed files:
- client-datasource-editor-ps/src/main/i18n/getters/jaxx.getter
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/AbstractSampleUI.jcss
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/AbstractSampleUIHandler.java
- + client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleImplHandler.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUI.jaxx
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUIHandler.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUIModel.java
- + client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleImplHandler.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleUI.jaxx
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleUIHandler.java
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleUIModel.java
Changes:
=====================================
client-datasource-editor-ps/src/main/i18n/getters/jaxx.getter
=====================================
@@ -5,6 +5,7 @@ observe.Id.ocean
observe.Id.sex
observe.Id.sizeMeasureType
observe.Id.species
+observe.Id.weightMeasureType
observe.Id.whenArriving
observe.Id.whenLeaving
observe.action.reset
@@ -22,6 +23,7 @@ observe.data.Data.startDate
observe.data.Data.vessel
observe.data.Data.weightMeasureMethod
observe.data.Sample.action.resetDefaultSizeMeasureType.tip
+observe.data.Sample.action.resetDefaultWeightMeasureType.tip
observe.data.ps.common.GearUseFeatures.action.create.tip
observe.data.ps.common.GearUseFeatures.action.create.tip.tip
observe.data.ps.common.GearUseFeatures.gear
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/AbstractSampleUI.jcss
=====================================
@@ -20,45 +20,6 @@
* #L%
*/
-#acquisitionModeGroup {
- selectedValue:{AcquisitionMode.valueOf(tableEditBean.getAcquisitionMode())};
-}
-
-#acquisitionModePanel {
- border:{new TitledBorder(t("observe.data.Data.acquisitionMode"))};
-}
-
-#acquisitionModeEffectif {
- buttonGroup:"acquisitionModeGroup";
- value:{AcquisitionMode.byEffectif};
- text:{AcquisitionMode.byEffectif.toString()};
- selected:{tableEditBean.getAcquisitionMode() == 0};
- enabled:{!tableModel.isEditable() || tableModel.isCreate()};
-}
-
-#acquisitionModeIndividu {
- buttonGroup:"acquisitionModeGroup";
- value:{AcquisitionMode.byIndividu};
- text:{AcquisitionMode.byIndividu.toString()};
- selected:{tableEditBean.getAcquisitionMode() == 1};
- enabled:{!tableModel.isEditable() || tableModel.isCreate()};
-}
-
-#sizeMeasureTypePanel {
- border:{new TitledBorder(t("observe.data.Data.speciesAndSizeMeasure"))};
-}
-
-#sizeMeasureType {
- enabled:{tableEditBean.getSpecies() != null};
-}
-
-#defaultSizeMeasureType {
- actionIcon:combobox-reset2;
- toolTipText:"observe.data.Sample.action.resetDefaultSizeMeasureType.tip";
- enabled:{model.getDefaultSizeMeasureType() != null};
- focusable:false;
-}
-
#lengthSourceInformation {
disabledIcon: {iconDataObserve};
icon: {iconDataCalcule};
@@ -73,7 +34,7 @@
#weightSourceInformation {
disabledIcon: {iconDataObserve};
icon: {iconDataCalcule};
- enabled: {tableEditBean.isIsWeightComputed()};
+ enabled: {tableEditBean.getAcquisitionMode() == 1 && tableEditBean.isIsWeightComputed()};
toolTipText:{getWeightDataTip(tableEditBean.isIsWeightComputed())};
}
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/AbstractSampleUIHandler.java
=====================================
@@ -31,6 +31,7 @@ import fr.ird.observe.dto.data.ps.observation.NonTargetLengthDto;
import fr.ird.observe.dto.data.ps.observation.TargetLengthDto;
import fr.ird.observe.dto.referential.common.SizeMeasureTypeReference;
import fr.ird.observe.dto.referential.common.SpeciesReference;
+import fr.ird.observe.dto.referential.common.WeightMeasureTypeReference;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -83,6 +84,7 @@ public abstract class AbstractSampleUIHandler<E extends DataDto, D extends DataD
final PropertyChangeListener speciesChanged;
private ImmutableMap<String, SizeMeasureTypeReference> sizeMeasureTypeReferenceMap;
+ private ImmutableMap<String, WeightMeasureTypeReference> weightMeasureTypeReferenceMap;
AbstractSampleUIHandler() {
super();
@@ -104,6 +106,8 @@ public abstract class AbstractSampleUIHandler<E extends DataDto, D extends DataD
void loadSizeMeasureTypes() {
List<SizeMeasureTypeReference> sizeMeasureTypeReferences = getModel().getReferenceCache().getReferentialReferences(NonTargetLengthDto.PROPERTY_SIZE_MEASURE_TYPE);
sizeMeasureTypeReferenceMap = Maps.uniqueIndex(sizeMeasureTypeReferences, SizeMeasureTypeReference::getId);
+ List<WeightMeasureTypeReference> weightMeasureTypeReferences = getModel().getReferenceCache().getReferentialReferences(NonTargetLengthDto.PROPERTY_WEIGHT_MEASURE_TYPE);
+ weightMeasureTypeReferenceMap = Maps.uniqueIndex(weightMeasureTypeReferences, WeightMeasureTypeReference::getId);
}
Optional<SizeMeasureTypeReference> getSpeciesDefaultSizeMeasureType(SpeciesReference species) {
@@ -113,7 +117,19 @@ public abstract class AbstractSampleUIHandler<E extends DataDto, D extends DataD
result = sizeMeasureTypeReferenceMap.get(sizeMeasureId);
log.info("Use as default size measure type: " + result);
} else {
- log.info("No default size measure type defined (species is null, or no default size measure definied on it.");
+ log.info("No default size measure type defined (species is null, or no default size measure defined on it.");
+ }
+ return Optional.ofNullable(result);
+ }
+
+ Optional<WeightMeasureTypeReference> getSpeciesDefaultWeightMeasureType(SpeciesReference species) {
+ WeightMeasureTypeReference result = null;
+ if (species != null && species.getSizeMeasureTypeId() != null) {
+ String weightMeasureId = species.getWeightMeasureTypeId();
+ result = weightMeasureTypeReferenceMap.get(weightMeasureId);
+ log.info("Use as default weight measure type: " + result);
+ } else {
+ log.info("No default weight measure type defined (species is null, or no default weight measure defined on it.");
}
return Optional.ofNullable(result);
}
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleImplHandler.java
=====================================
@@ -0,0 +1,116 @@
+package fr.ird.observe.client.datasource.editor.content.data.ps.observation;
+
+/*-
+ * #%L
+ * ObServe :: Client DataSource Editor PS
+ * %%
+ * Copyright (C) 2008 - 2020 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
+import fr.ird.observe.client.datasource.editor.content.data.sample.SampleUIHandler;
+import fr.ird.observe.dto.data.ps.observation.NonTargetLengthDto;
+import fr.ird.observe.dto.data.ps.observation.NonTargetSampleDto;
+
+import javax.swing.JComponent;
+
+public class NonTargetSampleImplHandler extends SampleUIHandler<NonTargetSampleDto, NonTargetLengthDto, NonTargetSampleUI> {
+
+ private final NonTargetSampleUI ui;
+
+ public NonTargetSampleImplHandler(NonTargetSampleUI ui) {
+ this.ui = ui;
+ }
+
+ @Override
+ public NonTargetSampleUIModel getModel() {
+ return (NonTargetSampleUIModel) super.getModel();
+ }
+
+ @Override
+ protected void onWeightChanged(Float newValue) {
+ NonTargetSampleUIModel model = getModel();
+ model.getTableEditBean().setIsWeightComputed(false);
+ NonTargetLengthDto tableEditBean = model.getTableEditBean();
+ if (newValue == null) {
+ tableEditBean.setWeightMeasureMethod(null);
+ }
+ }
+
+ @Override
+ protected void onLengthChanged(Float newValue) {
+ NonTargetSampleUIModel model = getModel();
+ model.getTableEditBean().setIsLengthComputed(false);
+ NonTargetLengthDto tableEditBean = model.getTableEditBean();
+ if (newValue == null) {
+ tableEditBean.setLengthMeasureMethod(null);
+ }
+ }
+
+ @Override
+ protected void onAcquisitionModeChangedToEffectif(boolean createMode, NonTargetLengthDto editBean) {
+
+ // weight not enabled
+ ui.getWeight().setEnabled(false);
+// ui.getWeightMeasureType().setEnabled(false);
+ ui.getWeightMeasureMethod().setEnabled(false);
+
+ // count enabled
+ ui.getCount().setEnabled(true);
+
+ if (createMode) {
+
+ // delete any weight value
+ editBean.setWeight(null);
+ editBean.setWeightMeasureType(null);
+ editBean.setWeightMeasureMethod(null);
+ // delete count (force use to reset it)
+ editBean.setCount(null);
+ }
+
+ }
+
+ @Override
+ protected void onAcquisitionModeChangedToIndividual(boolean createMode, NonTargetLengthDto editBean) {
+
+ // weight enabled
+ ui.getWeight().setEnabled(true);
+// ui.getWeightMeasureType().setEnabled(true);
+ ui.getWeightMeasureMethod().setEnabled(true);
+
+ // count not enabled (set to one)
+ ui.getCount().setEnabled(false);
+ if (createMode) {
+ // Always set to one
+ editBean.setCount(1);
+ editBean.setWeightMeasureType(getModel().getDefaultWeightMeasureType());
+ }
+ }
+
+ @Override
+ protected void setFormFocusOwner(JComponent requestFocus) {
+ ui.getHandler().setFormFocusOwner(requestFocus);
+ }
+
+ @Override
+ protected JComponent getNewFormFocusOwner(boolean create, boolean modelCreate, boolean unsetSpecies, boolean withPrevious) {
+ if (create && !withPrevious) {
+ return ui.getSpecies();
+ }
+ return ui.getSex();
+ }
+}
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUI.jaxx
=====================================
@@ -21,17 +21,19 @@
<fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUI beanScope="bean"
i18n="fr.ird.observe.dto.data.ps.observation.NonTargetLengthDto"
superGenericType='NonTargetSampleDto, NonTargetLengthDto, NonTargetSampleUI'
- implements="fr.ird.observe.client.datasource.editor.content.data.table.SortableTableUI"
+ implements="fr.ird.observe.client.datasource.editor.content.data.sample.SampleUI<NonTargetSampleDto, NonTargetLengthDto, NonTargetSampleUI>, fr.ird.observe.client.datasource.editor.content.data.table.SortableTableUI"
contentTitle='{n("observe.data.ps.observation.NonTargetSample.title")}'
saveNewEntryText='{n("observe.data.ps.observation.NonTargetSample.action.create")}'
saveNewEntryTip='{n("observe.data.ps.observation.NonTargetSample.action.create.tip")}'>
<style source="classpath:/fr/ird/observe/client/datasource/editor/content/data/CommonTable.jcss"/>
+ <style source="classpath:/fr/ird/observe/client/datasource/editor/content/data/sample/CommonSample.jcss"/>
<style source="AbstractSampleUI.jcss"/>
<import>
fr.ird.observe.dto.referential.common.SexReference
fr.ird.observe.dto.referential.common.SizeMeasureTypeReference
+ fr.ird.observe.dto.referential.common.WeightMeasureTypeReference
fr.ird.observe.dto.referential.common.SpeciesReference
fr.ird.observe.dto.referential.common.LengthMeasureMethodReference
fr.ird.observe.dto.referential.common.WeightMeasureMethodReference
@@ -55,6 +57,8 @@
<!-- model -->
<NonTargetSampleUIModel id='model' constructorParams='this'/>
+ <NonTargetSampleImplHandler id='sampleHandler' initializer="getContextValue(NonTargetSampleImplHandler.class)"/>
+
<!-- edit bean -->
<NonTargetSampleDto id='bean'/>
@@ -76,16 +80,13 @@
</BeanValidator>
<ButtonGroup id='acquisitionModeGroup'
- onStateChanged='getHandler().updateAcquisitionMode((AcquisitionMode) acquisitionModeGroup.getSelectedValue())'/>
+ onStateChanged='getSampleHandler().updateAcquisitionMode((AcquisitionMode) acquisitionModeGroup.getSelectedValue())'/>
<script><![CDATA[
-public String getWeightDataTip(boolean computed) {
- return computed ? t(NonTargetSampleUIHandler.POIDS_COMPUTED_TIP) : t(NonTargetSampleUIHandler.POIDS_OBSERVED_TIP);
-}
-
-public String getLengthDataTip(boolean computed) {
- return computed ? t(NonTargetSampleUIHandler.LONGUEUR_COMPUTED_TIP) : t(NonTargetSampleUIHandler.LONGUEUR_OBSERVED_TIP);
+@Override
+public NonTargetSampleUIModel getSampleModel() {
+ return getModel();
}
]]>
@@ -118,10 +119,19 @@ public String getLengthDataTip(boolean computed) {
</cell>
<cell>
<JPanel layout='{new BorderLayout()}'>
- <JaxxComboBox id='sizeMeasureType' genericType='SizeMeasureTypeReference'
- constructorParams='this' constraints="BorderLayout.CENTER"/>
- <JButton id="defaultSizeMeasureType" constraints="BorderLayout.EAST"
- onActionPerformed="getHandler().resetDefaultSizeMeasureType()"/>
+ <JaxxComboBox id='sizeMeasureType' genericType='SizeMeasureTypeReference' constructorParams='this' constraints="BorderLayout.CENTER"/>
+ <JButton id="defaultSizeMeasureType" constraints="BorderLayout.EAST"/>
+ </JPanel>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='weightMeasureTypeLabel' styleClass="i18n"/>
+ </cell>
+ <cell>
+ <JPanel layout='{new BorderLayout()}'>
+ <JaxxComboBox id='weightMeasureType' genericType='WeightMeasureTypeReference' constructorParams='this' constraints="BorderLayout.CENTER"/>
+ <JButton id="defaultWeightMeasureType" constraints="BorderLayout.EAST"/>
</JPanel>
</cell>
</row>
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUIHandler.java
=====================================
@@ -22,7 +22,7 @@
package fr.ird.observe.client.datasource.editor.content.data.ps.observation;
import fr.ird.observe.client.constants.AcquisitionMode;
-import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableModel;
+import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUIHandler;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUILayoutFocusTraversalPolicy;
import fr.ird.observe.client.datasource.editor.content.spi.ContentUIReferenceCache;
import fr.ird.observe.client.datasource.editor.content.spi.ReferentialReferencesFilter;
@@ -44,15 +44,12 @@ import org.apache.logging.log4j.Logger;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.validator.NuitonValidatorScope;
-import javax.swing.JComponent;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import java.awt.Component;
import java.awt.Container;
-import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
-import java.util.Optional;
import static io.ultreia.java4all.i18n.I18n.n;
import static io.ultreia.java4all.i18n.I18n.t;
@@ -61,10 +58,12 @@ import static io.ultreia.java4all.i18n.I18n.t;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 1.0
*/
-public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetSampleDto, NonTargetLengthDto, NonTargetSampleUI> implements UIHandler<NonTargetSampleUI> {
+public class NonTargetSampleUIHandler extends ContentTableUIHandler<NonTargetSampleDto, NonTargetLengthDto, NonTargetSampleUI> implements UIHandler<NonTargetSampleUI> {
private static final Logger log = LogManager.getLogger(NonTargetSampleUIHandler.class);
+ private NonTargetSampleImplHandler sampleHandler;
+
@Override
public NonTargetSampleUIModel getModel() {
return ui.getModel();
@@ -73,11 +72,16 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS
@Override
public void beforeInit(NonTargetSampleUI ui) {
super.beforeInit(ui);
+ sampleHandler = new NonTargetSampleImplHandler(ui);
+ sampleHandler.beforeInit(ui);
+ ui.setContextValue(sampleHandler);
}
@Override
public void afterInit(NonTargetSampleUI ui) {
super.afterInit(ui);
+ sampleHandler.init();
+ ui.removeContextValue(NonTargetSampleImplHandler.class);
}
// @Override
@@ -202,94 +206,106 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS
// // normalement cela est fait quand on fait le setForm (mais ici le setForm est fait trop tôt)
// getModel().updateUiWithReferenceSetsFromModel();
- loadSizeMeasureTypes();
+ model.loadSizeMeasureTypes();
form.getObject().copy(model.getBean());
}
@Override
protected void onSelectedRowChanged(int editingRow, NonTargetLengthDto bean, boolean create) {
- ContentTableModel<NonTargetSampleDto, NonTargetLengthDto> model = getTableModel();
- if (!model.isEditable()) {
- return;
- }
- NonTargetLengthDto tableEditBean = getModel().getTableEditBean();
- tableEditBean.removePropertyChangeListener(NonTargetLengthDto.PROPERTY_WEIGHT, weightChanged);
- tableEditBean.removePropertyChangeListener(NonTargetLengthDto.PROPERTY_LENGTH, lengthChanged);
- tableEditBean.removePropertyChangeListener(NonTargetLengthDto.PROPERTY_SPECIES, speciesChanged);
-
- SpeciesReference species = bean.getSpecies();
- log.debug(prefix + "selected species " + species);
- List<SpeciesReference> availableSpecies;
- JComponent requestFocus;
- Optional<SizeMeasureTypeReference> sizeMeasureType = Optional.empty();
-
- if (create) {
-
- Optional<SizeMeasureTypeReference> defaultSizeMeasureType;
-
- boolean unsetSpecies = true;
- if (model.isCreate()) {
-
- // on passe le mode de saisie en count
- AcquisitionMode acquisitionMode = AcquisitionMode.byEffectif;
-
- if (editingRow > 0) {
- unsetSpecies = false;
- // get previous row
- NonTargetLengthDto editBean = model.getValueAt(editingRow - 1);
- // get previous species
- species = editBean.getSpecies();
- // get previous acquisition mode
- acquisitionMode = AcquisitionMode.valueOf(editBean.getAcquisitionMode());
- // get previous size measure type
- sizeMeasureType = Optional.ofNullable(editBean.getSizeMeasureType());
- }
-
- updateAcquisitionMode0(acquisitionMode);
-
- }
-
- availableSpecies = getModel().getReferenceCache().getReferentialReferences(NonTargetLengthDto.PROPERTY_SPECIES);
-
- // get default size measure type
- defaultSizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
-
- if (unsetSpecies) {
- // unset species (this will not set again species in widget)
- species = null;
- sizeMeasureType = defaultSizeMeasureType;
- requestFocus = ui.getSpecies();
- } else {
- requestFocus = ui.getLength();
- }
+ sampleHandler.onSelectedRowChanged(editingRow, bean, create);
- // use default size measure type
- ui.getModel().setDefaultSizeMeasureType(defaultSizeMeasureType.orElse(null));
-
- } else {
- requestFocus = ui.getCount();
- updateAcquisitionMode0(AcquisitionMode.valueOf(bean.getAcquisitionMode()));
- availableSpecies = Collections.singletonList(species);
- species = null;
- sizeMeasureType = Optional.ofNullable(bean.getSizeMeasureType());
- }
-
- ui.getSizeMeasureType().setSelectedItem(null);
- sizeMeasureType.ifPresent(ui.getSizeMeasureType()::setSelectedItem);
-
- ui.getSpecies().setData(availableSpecies);
- if (species != null) {
- log.info(String.format("Will set species : %s", species));
- ui.getSpecies().setSelectedItem(null);
- ui.getSpecies().setSelectedItem(species);
- }
-
- setFormFocusOwner(requestFocus);
-
- tableEditBean.addPropertyChangeListener(NonTargetLengthDto.PROPERTY_WEIGHT, weightChanged);
- tableEditBean.addPropertyChangeListener(NonTargetLengthDto.PROPERTY_LENGTH, lengthChanged);
- tableEditBean.addPropertyChangeListener(NonTargetLengthDto.PROPERTY_SPECIES, speciesChanged);
+// ContentTableModel<NonTargetSampleDto, NonTargetLengthDto> model = getTableModel();
+// if (!model.isEditable()) {
+// return;
+// }
+// NonTargetLengthDto tableEditBean = getModel().getTableEditBean();
+// tableEditBean.removePropertyChangeListener(NonTargetLengthDto.PROPERTY_WEIGHT, weightChanged);
+// tableEditBean.removePropertyChangeListener(NonTargetLengthDto.PROPERTY_LENGTH, lengthChanged);
+// tableEditBean.removePropertyChangeListener(NonTargetLengthDto.PROPERTY_SPECIES, speciesChanged);
+//
+// SpeciesReference species = bean.getSpecies();
+// log.debug(prefix + "selected species " + species);
+// List<SpeciesReference> availableSpecies;
+// JComponent requestFocus;
+// Optional<SizeMeasureTypeReference> sizeMeasureType = Optional.empty();
+// Optional<WeightMeasureTypeReference> weightMeasureType = Optional.empty();
+//
+// if (create) {
+//
+// Optional<SizeMeasureTypeReference> defaultSizeMeasureType;
+// Optional<WeightMeasureTypeReference> defaultWeightMeasureType;
+//
+// boolean unsetSpecies = true;
+// if (model.isCreate()) {
+//
+// // on passe le mode de saisie en count
+// AcquisitionMode acquisitionMode = AcquisitionMode.byEffectif;
+//
+// if (editingRow > 0) {
+// unsetSpecies = false;
+// // get previous row
+// NonTargetLengthDto editBean = model.getValueAt(editingRow - 1);
+// // get previous species
+// species = editBean.getSpecies();
+// // get previous acquisition mode
+// acquisitionMode = AcquisitionMode.valueOf(editBean.getAcquisitionMode());
+// // get previous size measure type
+// sizeMeasureType = Optional.ofNullable(editBean.getSizeMeasureType());
+// weightMeasureType = Optional.ofNullable(editBean.getWeightMeasureType());
+// }
+//
+// updateAcquisitionMode0(acquisitionMode);
+//
+// }
+//
+// availableSpecies = getModel().getReferenceCache().getReferentialReferences(NonTargetLengthDto.PROPERTY_SPECIES);
+//
+// // get default size measure type
+// defaultSizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
+// defaultWeightMeasureType = getSpeciesDefaultWeightMeasureType(species);
+//
+// if (unsetSpecies) {
+// // unset species (this will not set again species in widget)
+// species = null;
+// sizeMeasureType = defaultSizeMeasureType;
+// weightMeasureType = defaultWeightMeasureType;
+// requestFocus = ui.getSpecies();
+// } else {
+// requestFocus = ui.getLength();
+// }
+//
+// // use default size measure type
+// ui.getModel().setDefaultSizeMeasureType(defaultSizeMeasureType.orElse(null));
+// ui.getModel().setDefaultWeightMeasureType(defaultWeightMeasureType.orElse(null));
+//
+// } else {
+// requestFocus = ui.getCount();
+// updateAcquisitionMode0(AcquisitionMode.valueOf(bean.getAcquisitionMode()));
+// availableSpecies = Collections.singletonList(species);
+// species = null;
+// sizeMeasureType = Optional.ofNullable(bean.getSizeMeasureType());
+// weightMeasureType = Optional.ofNullable(bean.getWeightMeasureType());
+// }
+//
+// ui.getSizeMeasureType().setSelectedItem(null);
+// sizeMeasureType.ifPresent(ui.getSizeMeasureType()::setSelectedItem);
+//
+// ui.getWeightMeasureType().setSelectedItem(null);
+// weightMeasureType.ifPresent(ui.getWeightMeasureType()::setSelectedItem);
+//
+// ui.getSpecies().setData(availableSpecies);
+// if (species != null) {
+// log.info(String.format("Will set species : %s", species));
+// ui.getSpecies().setSelectedItem(null);
+// ui.getSpecies().setSelectedItem(species);
+// }
+//
+// setFormFocusOwner(requestFocus);
+//
+// tableEditBean.addPropertyChangeListener(NonTargetLengthDto.PROPERTY_WEIGHT, weightChanged);
+// tableEditBean.addPropertyChangeListener(NonTargetLengthDto.PROPERTY_LENGTH, lengthChanged);
+// tableEditBean.addPropertyChangeListener(NonTargetLengthDto.PROPERTY_SPECIES, speciesChanged);
}
@Override
@@ -307,66 +323,81 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS
saveResult.toDto(bean);
}
- @Override
+ // @Override
public void resetIsWeightComputed() {
getModel().getTableEditBean().setIsWeightComputed(false);
ui.getWeight().grabFocus();
}
- @Override
+ // @Override
public void resetIsLengthComputed() {
getModel().getTableEditBean().setIsLengthComputed(false);
ui.getLength().grabFocus();
}
-
- @Override
- protected void onWeightChanged(Float newValue) {
- getModel().getTableEditBean().setIsWeightComputed(false);
- }
-
- @Override
- protected void onLengthChanged(Float newValue) {
- getModel().getTableEditBean().setIsLengthComputed(false);
- }
-
- @Override
- protected void onSpeciesChanged(SpeciesReference species) {
-
- Optional<SizeMeasureTypeReference> oldSizeMeasureType = Optional.ofNullable(getModel().getTableEditBean()).map(NonTargetLengthDto::getSizeMeasureType);
- Optional<SizeMeasureTypeReference> sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
- log.debug(prefix + "Default size measure " + sizeMeasureType.orElse(null));
- ui.getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
- resetDefaultSizeMeasureType();
- oldSizeMeasureType.ifPresent(sizeMeasureTypeReference -> getModel().getTableEditBean().setSizeMeasureType(sizeMeasureTypeReference));
- }
-
- public void resetDefaultSizeMeasureType() {
- ui.getSizeMeasureType().setSelectedItem(null);
- ui.getSizeMeasureType().setSelectedItem(ui.getModel().getDefaultSizeMeasureType());
- }
-
-// @Override
-// protected ContentMode computeWritableContentMode() {
-// ContentMode mode = super.computeWritableContentMode();
//
-// String selectedId = getSelectedId();
+// @Override
+// protected void onWeightChanged(Float newValue) {
+// getModel().getTableEditBean().setIsWeightComputed(false);
+// }
//
-// boolean showData = getNonTargetSampleService().canUseNonTargetSample(selectedId);
+// @Override
+// protected void onLengthChanged(Float newValue) {
+// getModel().getTableEditBean().setIsLengthComputed(false);
+// }
+
+// @Override
+// protected void onSpeciesChanged(SpeciesReference species) {
//
-// ui.getModel().setShowData(showData);
+// recomputeDefaultSizeMeasureType(species);
//
-// if (mode == ContentMode.UPDATE && !showData) {
+// recomputeDefaultWeightMeasureType(species);
+// }
//
-// // on repasse en mode resteint car on ne peut pas éditer l'écran
-// mode = ContentMode.READ;
+// @Override
+// protected void onWeightChanged(Float newValue) {
+// getModel().getTableEditBean().setIsWeightComputed(false);
+// }
+////
+// @Override
+// protected void onWeightChanged(Float newValue) {
+// getModel().getTableEditBean().setIsWeightComputed(false);
+// }
//
-// addMessage(ui,
-// NuitonValidatorScope.INFO,
-// getTypeI18nKey(SetDto.class),
-// t("observe.data.ps.observation.Set.message.no.nonTargetDiscarded"));
-// }
-// return mode;
+// @Override
+// protected void onLengthChanged(Float newValue) {
+// getModel().getTableEditBean().setIsLengthComputed(false);
+// }
+
+// @Override
+// protected void onLengthChanged(Float newValue) {
+// getModel().getTableEditBean().setIsLengthComputed(false);
+// }
+// protected void recomputeDefaultWeightMeasureType(SpeciesReference species) {
+// Optional<WeightMeasureTypeReference> oldWeightMeasureType = Optional.ofNullable(getModel().getTableEditBean()).map(NonTargetLengthDto::getWeightMeasureType);
+// Optional<WeightMeasureTypeReference> weightMeasureType = getSpeciesDefaultWeightMeasureType(species);
+// log.debug(String.format("%sDefault weight measure %s", prefix, weightMeasureType.orElse(null)));
+// ui.getModel().setDefaultWeightMeasureType(weightMeasureType.orElse(null));
+// resetDefaultWeightMeasureType();
+// oldWeightMeasureType.ifPresent(weightMeasureTypeReference -> getModel().getTableEditBean().setWeightMeasureType(weightMeasureTypeReference));
+// }
+
+// protected void recomputeDefaultSizeMeasureType(SpeciesReference species) {
+// Optional<SizeMeasureTypeReference> oldSizeMeasureType = Optional.ofNullable(getModel().getTableEditBean()).map(NonTargetLengthDto::getSizeMeasureType);
+// Optional<SizeMeasureTypeReference> sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
+// log.debug(String.format("%sDefault size measure %s", prefix, sizeMeasureType.orElse(null)));
+// ui.getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
+// resetDefaultSizeMeasureType();
+// oldSizeMeasureType.ifPresent(sizeMeasureTypeReference -> getModel().getTableEditBean().setSizeMeasureType(sizeMeasureTypeReference));
+// }
+
+// public void resetDefaultSizeMeasureType() {
+// ui.getSizeMeasureType().setSelectedItem(null);
+// ui.getSizeMeasureType().setSelectedItem(ui.getModel().getDefaultSizeMeasureType());
+// }
+// public void resetDefaultWeightMeasureType() {
+// ui.getWeightMeasureType().setSelectedItem(null);
+// ui.getWeightMeasureType().setSelectedItem(ui.getModel().getDefaultWeightMeasureType());
// }
/**
@@ -388,12 +419,14 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS
// le weight n'est pas modifiable
ui.getWeight().setEnabled(false);
ui.getWeightMeasureMethod().setEnabled(false);
+ ui.getWeightMeasureType().setEnabled(false);
// l'count est modifiable
ui.getCount().setEnabled(true);
if (createMode) {
// on supprime le weight (si il a été saisie)
editBean.setWeight(null);
editBean.setWeightMeasureMethod(null);
+ editBean.setWeightMeasureType(null);
// on supprime aussi l'count (pour forcer la saisie)
editBean.setCount(null);
}
@@ -402,6 +435,7 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS
// le weight est pas modifiable
ui.getWeight().setEnabled(true);
ui.getWeightMeasureMethod().setEnabled(true);
+ ui.getWeightMeasureType().setEnabled(true);
// l'count n'est pas modifiable et est toujours de 1
ui.getCount().setEnabled(false);
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetSampleUIModel.java
=====================================
@@ -22,17 +22,20 @@ package fr.ird.observe.client.datasource.editor.content.data.ps.observation;
* #L%
*/
+import fr.ird.observe.client.constants.AcquisitionMode;
import fr.ird.observe.client.datasource.api.ObserveDataSourcesManagerApplicationComponent;
import fr.ird.observe.client.datasource.api.ObserveSwingDataSource;
import fr.ird.observe.client.datasource.editor.content.ContentMode;
+import fr.ird.observe.client.datasource.editor.content.data.sample.SampleUIModel;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableMeta;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableModel;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUI;
-import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUIModel;
import fr.ird.observe.dto.data.ps.observation.NonTargetLengthDto;
import fr.ird.observe.dto.data.ps.observation.NonTargetLengthHelper;
import fr.ird.observe.dto.data.ps.observation.NonTargetSampleDto;
import fr.ird.observe.dto.referential.common.SizeMeasureTypeReference;
+import fr.ird.observe.dto.referential.common.SpeciesReference;
+import fr.ird.observe.dto.referential.common.WeightMeasureTypeReference;
import fr.ird.observe.navigation.model.select.ObserveSelectModelApplicationComponent;
import fr.ird.observe.navigation.model.select.ObserveSelectNode;
@@ -47,10 +50,7 @@ import java.util.List;
* @author Tony Chemit - dev(a)tchemit.fr
* @since XXX
*/
-public class NonTargetSampleUIModel extends ContentTableUIModel<NonTargetSampleDto, NonTargetLengthDto> {
-
- public static final String PROPERTY_DEFAULT_SIZE_MEASURE_TYPE = "defaultSizeMeasureType";
- private SizeMeasureTypeReference defaultSizeMeasureType;
+public class NonTargetSampleUIModel extends SampleUIModel<NonTargetSampleDto, NonTargetLengthDto> {
public NonTargetSampleUIModel(NonTargetSampleUI ui) {
@@ -121,16 +121,6 @@ public class NonTargetSampleUIModel extends ContentTableUIModel<NonTargetSampleD
return ObserveSelectModelApplicationComponent.value().getSeine().getSet();
}
- public SizeMeasureTypeReference getDefaultSizeMeasureType() {
- return defaultSizeMeasureType;
- }
-
- public void setDefaultSizeMeasureType(SizeMeasureTypeReference defaultSizeMeasureType) {
- SizeMeasureTypeReference oldValue = getDefaultSizeMeasureType();
- this.defaultSizeMeasureType = defaultSizeMeasureType;
- firePropertyChange(PROPERTY_DEFAULT_SIZE_MEASURE_TYPE, oldValue, defaultSizeMeasureType);
- }
-
@Override
protected boolean computeShowData(ContentMode contentMode) {
String selectedId = getSelectedId();
@@ -138,15 +128,43 @@ public class NonTargetSampleUIModel extends ContentTableUIModel<NonTargetSampleD
return mainDataSource.getPsObservationNonTargetSampleService().canUseNonTargetSample(selectedId);
}
- //FIXME Voir pourquoi c'est le seul modèle qui surcharge ça ???
-// @Override
-// public <D extends ReferentialDto, R extends ReferentialDtoReference<D, R>> Optional<Set<R>> tryToGetReferentialReferenceSet(String propertyName) {
-// //noinspection unchecked
-// ReferentialDtoReferenceSet<R> referenceSet = (ReferentialDtoReferenceSet) getReferentialReferenceSets().get(propertyName);
-// Set<R> references = null;
-// if (referenceSet != null) {
-// references = referenceSet.toSet();
-// }
-// return Optional.ofNullable(references);
-// }
+ @Override
+ public SpeciesReference getSpecies() {
+ return getTableEditBean().getSpecies();
+ }
+
+ @Override
+ public SizeMeasureTypeReference getSizeMeasureType() {
+ return getTableEditBean().getSizeMeasureType();
+ }
+
+ @Override
+ public WeightMeasureTypeReference getWeightMeasureType() {
+ return getTableEditBean().getWeightMeasureType();
+ }
+
+ @Override
+ public int getAcquisitionMode() {
+ return getTableEditBean().getAcquisitionMode();
+ }
+
+ @Override
+ public void setAcquisitionMode(int acquisitionMode) {
+ getTableEditBean().setAcquisitionMode(acquisitionMode);
+ }
+
+ @Override
+ public AcquisitionMode getDefaultAcquisitionMode() {
+ return AcquisitionMode.byEffectif;
+ }
+
+ @Override
+ public void setWeightMeasureType(WeightMeasureTypeReference weightMeasureType) {
+ getTableEditBean().setWeightMeasureType(weightMeasureType);
+ }
+
+ @Override
+ public void setSizeMeasureType(SizeMeasureTypeReference sizeMeasureType) {
+ getTableEditBean().setSizeMeasureType(sizeMeasureType);
+ }
}
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleImplHandler.java
=====================================
@@ -0,0 +1,119 @@
+package fr.ird.observe.client.datasource.editor.content.data.ps.observation;
+
+/*-
+ * #%L
+ * ObServe :: Client DataSource Editor PS
+ * %%
+ * Copyright (C) 2008 - 2020 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
+import fr.ird.observe.client.datasource.editor.content.data.sample.SampleUI;
+import fr.ird.observe.client.datasource.editor.content.data.sample.SampleUIHandler;
+import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUI;
+import fr.ird.observe.dto.data.ps.observation.TargetLengthDto;
+import fr.ird.observe.dto.data.ps.observation.TargetSampleDto;
+
+import javax.swing.JComponent;
+
+public class TargetSampleImplHandler<U extends ContentTableUI<TargetSampleDto, TargetLengthDto, U> & SampleUI<TargetSampleDto, TargetLengthDto, U>> extends SampleUIHandler<TargetSampleDto, TargetLengthDto, U> {
+
+ private final U ui;
+
+ public TargetSampleImplHandler(U ui) {
+ this.ui = ui;
+ }
+
+ @Override
+ public TargetSampleUIModel getModel() {
+ return (TargetSampleUIModel) super.getModel();
+ }
+
+ @Override
+ protected void onWeightChanged(Float newValue) {
+ TargetSampleUIModel model = getModel();
+ model.getTableEditBean().setIsWeightComputed(false);
+ TargetLengthDto tableEditBean = model.getTableEditBean();
+ if (newValue == null) {
+ tableEditBean.setWeightMeasureMethod(null);
+ }
+ }
+
+ @Override
+ protected void onLengthChanged(Float newValue) {
+ TargetSampleUIModel model = getModel();
+ model.getTableEditBean().setIsLengthComputed(false);
+ TargetLengthDto tableEditBean = model.getTableEditBean();
+ if (newValue == null) {
+ tableEditBean.setLengthMeasureMethod(null);
+ }
+ }
+
+ @Override
+ protected void onAcquisitionModeChangedToEffectif(boolean createMode, TargetLengthDto editBean) {
+ TargetSampleUI ui = (TargetSampleUI) this.ui;
+ // weight not enabled
+ ui.getWeight().setEnabled(false);
+// ui.getWeightMeasureType().setEnabled(false);
+ ui.getWeightMeasureMethod().setEnabled(false);
+
+ // count enabled
+ ui.getCount().setEnabled(true);
+
+ if (createMode) {
+
+ // delete any weight value
+ editBean.setWeight(null);
+ editBean.setWeightMeasureType(null);
+ editBean.setWeightMeasureMethod(null);
+ // delete count (force use to reset it)
+ editBean.setCount(null);
+ }
+
+ }
+
+ @Override
+ protected void onAcquisitionModeChangedToIndividual(boolean createMode, TargetLengthDto editBean) {
+ TargetSampleUI ui = (TargetSampleUI) this.ui;
+ // weight enabled
+ ui.getWeight().setEnabled(true);
+// ui.getWeightMeasureType().setEnabled(true);
+ ui.getWeightMeasureMethod().setEnabled(true);
+
+ // count not enabled (set to one)
+ ui.getCount().setEnabled(false);
+ if (createMode) {
+ // Always set to one
+ editBean.setCount(1);
+ editBean.setWeightMeasureType(getModel().getDefaultWeightMeasureType());
+ }
+ }
+
+ @Override
+ protected void setFormFocusOwner(JComponent requestFocus) {
+ ui.getHandler().setFormFocusOwner(requestFocus);
+ }
+
+ @Override
+ protected JComponent getNewFormFocusOwner(boolean create, boolean modelCreate, boolean unsetSpecies, boolean withPrevious) {
+ TargetSampleUI ui = (TargetSampleUI) this.ui;
+ if (create && !withPrevious) {
+ return ui.getSpecies();
+ }
+ return ui.getSex();
+ }
+}
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleUI.jaxx
=====================================
@@ -21,9 +21,10 @@
<fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUI beanScope="bean"
abstract="true" i18n="fr.ird.observe.dto.data.ps.observation.TargetLengthDto"
superGenericType='TargetSampleDto, TargetLengthDto, TargetSampleUI'
- implements="fr.ird.observe.client.datasource.editor.content.data.table.SortableTableUI">
+ implements="fr.ird.observe.client.datasource.editor.content.data.sample.SampleUI<TargetSampleDto, TargetLengthDto, TargetSampleUI>, fr.ird.observe.client.datasource.editor.content.data.table.SortableTableUI">
<style source="classpath:/fr/ird/observe/client/datasource/editor/content/data/CommonTable.jcss"/>
+ <style source="classpath:/fr/ird/observe/client/datasource/editor/content/data/sample/CommonSample.jcss"/>
<style source="AbstractSampleUI.jcss"/>
<import>
@@ -33,6 +34,7 @@
fr.ird.observe.dto.referential.common.SpeciesReference
fr.ird.observe.dto.referential.common.SexReference
fr.ird.observe.dto.referential.common.SizeMeasureTypeReference
+ fr.ird.observe.dto.referential.common.WeightMeasureTypeReference
fr.ird.observe.dto.referential.common.LengthMeasureMethodReference
fr.ird.observe.dto.referential.common.WeightMeasureMethodReference
fr.ird.observe.client.datasource.editor.content.data.table.*
@@ -51,6 +53,8 @@
<!-- model -->
<TargetSampleUIModel id='model' constructorParams='this'/>
+ <TargetSampleImplHandler id='sampleHandler' initializer="getContextValue(TargetSampleImplHandler.class)"/>
+
<!-- edit bean -->
<TargetSampleDto id='bean'/>
@@ -73,19 +77,16 @@
errorTableModel='{getErrorTableModel()}' context='update' parentValidator='{validator}'/>
<ButtonGroup id='acquisitionModeGroup'
- onStateChanged='TargetSampleUIHandler.updateModeSaisie(this, (AcquisitionMode) acquisitionModeGroup.getSelectedValue())'/>
+ onStateChanged='getSampleHandler().updateAcquisitionMode((AcquisitionMode) acquisitionModeGroup.getSelectedValue())'/>
<script><![CDATA[
@Override
public abstract TargetSampleUIHandler getHandler();
-public String getWeightDataTip(boolean computed) {
- return computed ? t(TargetSampleUIHandler.POIDS_COMPUTED_TIP) : t(TargetSampleUIHandler.POIDS_OBSERVED_TIP);
-}
-
-public String getLengthDataTip(boolean computed) {
- return computed ? t(TargetSampleUIHandler.LONGUEUR_COMPUTED_TIP) : t(TargetSampleUIHandler.LONGUEUR_OBSERVED_TIP);
+@Override
+public TargetSampleUIModel getSampleModel() {
+ return getModel();
}
]]>
</script>
@@ -114,10 +115,19 @@ public String getLengthDataTip(boolean computed) {
</cell>
<cell>
<JPanel layout='{new BorderLayout()}'>
- <JaxxComboBox id='sizeMeasureType' genericType='SizeMeasureTypeReference'
- constructorParams='this' constraints="BorderLayout.CENTER"/>
- <JButton id="defaultSizeMeasureType" constraints="BorderLayout.EAST"
- onActionPerformed="getHandler().resetDefaultSizeMeasureType()"/>
+ <JaxxComboBox id='sizeMeasureType' genericType='SizeMeasureTypeReference' constructorParams='this' constraints="BorderLayout.CENTER"/>
+ <JButton id="defaultSizeMeasureType" constraints="BorderLayout.EAST"/>
+ </JPanel>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='weightMeasureTypeLabel' styleClass="i18n"/>
+ </cell>
+ <cell>
+ <JPanel layout='{new BorderLayout()}'>
+ <JaxxComboBox id='weightMeasureType' genericType='WeightMeasureTypeReference' constructorParams='this' constraints="BorderLayout.CENTER"/>
+ <JButton id="defaultWeightMeasureType" constraints="BorderLayout.EAST"/>
</JPanel>
</cell>
</row>
@@ -160,7 +170,7 @@ public String getLengthDataTip(boolean computed) {
</cell>
</row>
- <!-- weight individuel -->
+ <!-- weight -->
<row>
<cell>
<JLabel id='weightLabel' styleClass="i18n"/>
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleUIHandler.java
=====================================
@@ -22,9 +22,10 @@
package fr.ird.observe.client.datasource.editor.content.data.ps.observation;
import fr.ird.observe.client.configuration.WithClientConfig;
-import fr.ird.observe.client.constants.AcquisitionMode;
+import fr.ird.observe.client.datasource.editor.content.data.sample.SampleUI;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableModel;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUI;
+import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUIHandler;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUILayoutFocusTraversalPolicy;
import fr.ird.observe.client.datasource.editor.content.spi.ContentUIReferenceCache;
import fr.ird.observe.client.datasource.editor.content.spi.ReferentialReferencesFilter;
@@ -40,13 +41,13 @@ import fr.ird.observe.dto.referential.common.SpeciesDto;
import fr.ird.observe.dto.referential.common.SpeciesReference;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.spi.DtoModelHelper;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.nuiton.validator.NuitonValidatorScope;
-import javax.swing.JComponent;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import java.util.List;
-import java.util.Optional;
import static io.ultreia.java4all.i18n.I18n.n;
import static io.ultreia.java4all.i18n.I18n.t;
@@ -55,7 +56,8 @@ import static io.ultreia.java4all.i18n.I18n.t;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 1.0
*/
-public class TargetSampleUIHandler<U extends ContentTableUI<TargetSampleDto, TargetLengthDto, U>> extends AbstractSampleUIHandler<TargetSampleDto, TargetLengthDto, U> implements WithClientConfig {
+public class TargetSampleUIHandler<U extends ContentTableUI<TargetSampleDto, TargetLengthDto, U> & SampleUI<TargetSampleDto, TargetLengthDto, U>> extends ContentTableUIHandler<TargetSampleDto, TargetLengthDto, U> implements WithClientConfig {
+ private static final Logger log = LogManager.getLogger(TargetSampleUIHandler.class);
/**
* Pour différencier positionner l'invariant de l'écran
@@ -64,71 +66,25 @@ public class TargetSampleUIHandler<U extends ContentTableUI<TargetSampleDto, Tar
* @since 1.5
*/
private final boolean discarded;
+ private TargetSampleImplHandler<U> sampleHandler;
public TargetSampleUIHandler(boolean discarded) {
this.discarded = discarded;
}
- /**
- * Le mode de saisie a été mis à jour.
- *
- * @param newMode le nouveau de mode de saisie à utiliser
- * @since 1.8
- */
- static void updateModeSaisie(TargetSampleUI ui, AcquisitionMode newMode) {
-
- if (newMode == null) {
-
- // mode null (cela peut arriver avec les bindings)
- return;
- }
- boolean createMode = ui.getTableModel().isCreate();
-
- TargetLengthDto editBean = ui.getTableEditBean();
- switch (newMode) {
-
- case byEffectif:
-
- // le weight n'est pas modifiable
- ui.getWeight().setEnabled(false);
- ui.getWeightMeasureMethod().setEnabled(false);
-
- // l'count est modifiable
- ui.getCount().setEnabled(true);
-
- if (createMode) {
-
- // on supprime le weight (si il a été saisie)
- editBean.setWeight(null);
- editBean.setWeightMeasureMethod(null);
- // on supprime aussi l'count (pour forcer la saisie)
- editBean.setCount(null);
- }
- break;
-
- case byIndividu:
-
- // le weight est pas modifiable
- ui.getWeight().setEnabled(true);
- ui.getWeightMeasureMethod().setEnabled(true);
-
- // l'count n'est pas modifiable et est toujours de 1
- ui.getCount().setEnabled(false);
-
-
- if (createMode) {
-
- // on positionne l'count à 1 (seule valeur possible)
- editBean.setCount(1);
- }
- break;
- }
-
- if (createMode) {
+ @Override
+ public void beforeInit(U ui) {
+ super.beforeInit(ui);
+ sampleHandler = new TargetSampleImplHandler<>(ui);
+ sampleHandler.beforeInit(ui);
+ ui.setContextValue(sampleHandler);
+ }
- // on propage le mode de saisie dans le bean
- editBean.setAcquisitionMode(newMode.ordinal());
- }
+ @Override
+ public void afterInit(U ui) {
+ super.afterInit(ui);
+ sampleHandler.init();
+ ui.removeContextValue(TargetSampleImplHandler.class);
}
boolean isDiscarded() {
@@ -191,11 +147,16 @@ public class TargetSampleUIHandler<U extends ContentTableUI<TargetSampleDto, Tar
log.info(prefix + "Using " + data.size() + " size measure type(s).");
// We need to fill the referential cache (normally this is done in onOpenModel method)
getModel().getReferenceCache().loadReferentialReferenceSetsInModel(DtoModelHelper.getOptionalFormDefinition(TargetSampleDto.class).get(), true);
- loadSizeMeasureTypes();
+ getModel().loadSizeMeasureTypes();
checkSizeMeasureTypes(data);
((TargetSampleUI) ui).getSizeMeasureType().setData(data);
}
+ @Override
+ public TargetSampleUIModel getModel() {
+ return (TargetSampleUIModel) super.getModel();
+ }
+
@Override
protected boolean onOpenComputeShowData() {
return getPsObservationTargetSampleService().canUseTargetSample(getModel().getSelectedId(), discarded);
@@ -238,105 +199,113 @@ public class TargetSampleUIHandler<U extends ContentTableUI<TargetSampleDto, Tar
@Override
protected void onSelectedRowChanged(int editingRow, TargetLengthDto bean, boolean create) {
+ sampleHandler.onSelectedRowChanged(editingRow, bean, create);
ContentTableModel<TargetSampleDto, TargetLengthDto> model = getTableModel();
- TargetSampleUI ui = (TargetSampleUI) getUi();
+// TargetSampleUI ui = (TargetSampleUI) getUi();
if (!model.isEditable()) {
return;
}
TargetLengthDto tableEditBean = getModel().getTableEditBean();
- tableEditBean.removePropertyChangeListener(TargetLengthDto.PROPERTY_WEIGHT, weightChanged);
- tableEditBean.removePropertyChangeListener(TargetLengthDto.PROPERTY_LENGTH, lengthChanged);
- tableEditBean.removePropertyChangeListener(TargetLengthDto.PROPERTY_SPECIES, speciesChanged);
-
- SpeciesReference species = bean.getSpecies();
-
- JComponent requestFocus;
-
- AcquisitionMode acquisitionMode;
- Optional<SizeMeasureTypeReference> sizeMeasureType = Optional.empty();
-
- if (create) {
-
- acquisitionMode = AcquisitionMode.byEffectif;
- if (model.isCreate()) {
-
- if (editingRow > 0) {
- // on recupere l'species de la ligne precedente
- TargetLengthDto editBean = model.getValueAt(editingRow - 1);
- species = editBean.getSpecies();
- acquisitionMode = AcquisitionMode.valueOf(editBean.getAcquisitionMode());
- }
-
- // on utilise le code par defaut de l'espèce
- sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
- if (!sizeMeasureType.isPresent()) {
- // au cas où, on repasse toujours sur lf
- sizeMeasureType = Optional.of(SizeMeasureTypeReference.getLf(ui.getSizeMeasureType().getModel().getData()));
- }
- ui.getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
- }
- requestFocus = ui.getSpecies();
- } else {
- requestFocus = ui.getCount();
- acquisitionMode = AcquisitionMode.valueOf(bean.getAcquisitionMode());
- sizeMeasureType = Optional.ofNullable(bean.getSizeMeasureType());
- }
+ sampleHandler.onLengthChanged(tableEditBean.getLength());
+ sampleHandler.onWeightChanged(tableEditBean.getWeight());
- ui.getAcquisitionModeGroup().setSelectedValue(null);
- ui.getAcquisitionModeGroup().setSelectedValue(acquisitionMode);
-
- ui.getSizeMeasureType().setSelectedItem(null);
- sizeMeasureType.ifPresent(sizeMeasureTypeDtoReferentialReference -> ui.getSizeMeasureType().setSelectedItem(sizeMeasureTypeDtoReferentialReference));
-
- // on met a jour l'espece
- ui.getSpecies().setSelectedItem(null);
- if (species != null) {
- log.debug(prefix + "species to use " + species);
- ui.getSpecies().setSelectedItem(species);
- }
- setFormFocusOwner(requestFocus);
-
- tableEditBean.addPropertyChangeListener(TargetLengthDto.PROPERTY_WEIGHT, weightChanged);
- tableEditBean.addPropertyChangeListener(TargetLengthDto.PROPERTY_LENGTH, lengthChanged);
- tableEditBean.addPropertyChangeListener(TargetLengthDto.PROPERTY_SPECIES, speciesChanged);
+// tableEditBean.removePropertyChangeListener(TargetLengthDto.PROPERTY_WEIGHT, weightChanged);
+// tableEditBean.removePropertyChangeListener(TargetLengthDto.PROPERTY_LENGTH, lengthChanged);
+// tableEditBean.removePropertyChangeListener(TargetLengthDto.PROPERTY_SPECIES, speciesChanged);
+//
+// SpeciesReference species = bean.getSpecies();
+//
+// JComponent requestFocus;
+//
+// AcquisitionMode acquisitionMode;
+// Optional<SizeMeasureTypeReference> sizeMeasureType = Optional.empty();
+// Optional<WeightMeasureTypeReference> weightMeasureType = Optional.empty();
+//
+// if (create) {
+//
+// acquisitionMode = AcquisitionMode.byEffectif;
+// if (model.isCreate()) {
+//
+// if (editingRow > 0) {
+// // on recupere l'species de la ligne precedente
+// TargetLengthDto editBean = model.getValueAt(editingRow - 1);
+// species = editBean.getSpecies();
+// acquisitionMode = AcquisitionMode.valueOf(editBean.getAcquisitionMode());
+// }
+//
+// // on utilise le code par defaut de l'espèce
+// sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
+// ui.getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
+// if (!sizeMeasureType.isPresent()) {
+// // au cas où, on repasse toujours sur lf
+// sizeMeasureType = Optional.of(SizeMeasureTypeReference.getLf(ui.getSizeMeasureType().getModel().getData()));
+// }
+// weightMeasureType = getSpeciesDefaultWeightMeasureType(species);
+// ui.getModel().setDefaultWeightMeasureType(weightMeasureType.orElse(null));
+// }
+// requestFocus = ui.getSpecies();
+// } else {
+// requestFocus = ui.getCount();
+// acquisitionMode = AcquisitionMode.valueOf(bean.getAcquisitionMode());
+// sizeMeasureType = Optional.ofNullable(bean.getSizeMeasureType());
+// weightMeasureType = Optional.ofNullable(bean.getWeightMeasureType());
+// }
+//
+// ui.getAcquisitionModeGroup().setSelectedValue(null);
+// ui.getAcquisitionModeGroup().setSelectedValue(acquisitionMode);
+//
+// ui.getSizeMeasureType().setSelectedItem(null);
+// sizeMeasureType.ifPresent(sizeMeasureTypeDtoReferentialReference -> ui.getSizeMeasureType().setSelectedItem(sizeMeasureTypeDtoReferentialReference));
+//
+// ui.getWeightMeasureType().setSelectedItem(null);
+// weightMeasureType.ifPresent(weightMeasureTypeDtoReferentialReference -> ui.getWeightMeasureType().setSelectedItem(weightMeasureTypeDtoReferentialReference));
+//
+// // on met a jour l'espece
+// ui.getSpecies().setSelectedItem(null);
+// if (species != null) {
+// log.debug(prefix + "species to use " + species);
+// ui.getSpecies().setSelectedItem(species);
+// }
+// setFormFocusOwner(requestFocus);
+//
+// tableEditBean.addPropertyChangeListener(TargetLengthDto.PROPERTY_WEIGHT, weightChanged);
+// tableEditBean.addPropertyChangeListener(TargetLengthDto.PROPERTY_LENGTH, lengthChanged);
+// tableEditBean.addPropertyChangeListener(TargetLengthDto.PROPERTY_SPECIES, speciesChanged);
}
- @Override
+ // @Override
public void resetIsWeightComputed() {
getModel().getTableEditBean().setIsWeightComputed(false);
((TargetSampleUI) ui).getWeight().grabFocus();
}
- @Override
+ // @Override
public void resetIsLengthComputed() {
getModel().getTableEditBean().setIsLengthComputed(false);
((TargetSampleUI) ui).getLength().grabFocus();
}
- @Override
- protected void onSpeciesChanged(SpeciesReference species) {
- // on utilise le code par defaut de l'espèce
- Optional<SizeMeasureTypeReference> sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
- ((TargetSampleUI) ui).getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
- resetDefaultSizeMeasureType();
- }
-
- @Override
- protected void onWeightChanged(Float newValue) {
- getModel().getTableEditBean().setIsWeightComputed(false);
- }
+// @Override
+// protected void onSpeciesChanged(SpeciesReference species) {
+// // on utilise le code par defaut de l'espèce
+// Optional<SizeMeasureTypeReference> sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
+// ((TargetSampleUI) ui).getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
+// resetDefaultSizeMeasureType();
+// Optional<WeightMeasureTypeReference> weightMeasureType = getSpeciesDefaultWeightMeasureType(species);
+// ((TargetSampleUI) ui).getModel().setDefaultWeightMeasureType(weightMeasureType.orElse(null));
+// resetDefaultWeightMeasureType();
+// }
- @Override
- protected void onLengthChanged(Float newValue) {
- getModel().getTableEditBean().setIsLengthComputed(false);
- }
+// @Override
+// protected void onWeightChanged(Float newValue) {
+// getModel().getTableEditBean().setIsWeightComputed(false);
+// }
- public void resetDefaultSizeMeasureType() {
- TargetSampleUI ui = (TargetSampleUI) getUi();
- ui.getSizeMeasureType().setSelectedItem(null);
- ui.getSizeMeasureType().setSelectedItem(ui.getModel().getDefaultSizeMeasureType());
- }
+// @Override
+// protected void onLengthChanged(Float newValue) {
+// getModel().getTableEditBean().setIsLengthComputed(false);
+// }
private void checkSizeMeasureTypes(List<SizeMeasureTypeReference> data) {
if (data.size() != 2) {
@@ -344,29 +313,4 @@ public class TargetSampleUIHandler<U extends ContentTableUI<TargetSampleDto, Tar
}
}
-// @Override
-// protected ContentMode computeWritableContentMode() {
-// ContentMode mode = super.computeWritableContentMode();
-//
-// String selectedId = getSelectedId();
-//
-// boolean showData = getTargetSampleService().canUseTargetSample(selectedId, discarded);
-//
-// getModel().setShowData(showData);
-//
-// if (mode == ContentMode.UPDATE && !showData) {
-//
-// mode = ContentMode.READ;
-//
-// addMessage(ui,
-// NuitonValidatorScope.INFO,
-// getTypeI18nKey(SetDto.class),
-// discarded ?
-// t("observe.data.ps.observation.Set.message.no.targetCatch") :
-// t("observe.data.ps.observation.Set.message.no.targetDiscarded")
-// );
-// }
-// return mode;
-// }
-
}
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/TargetSampleUIModel.java
=====================================
@@ -22,17 +22,20 @@ package fr.ird.observe.client.datasource.editor.content.data.ps.observation;
* #L%
*/
+import fr.ird.observe.client.constants.AcquisitionMode;
import fr.ird.observe.client.datasource.api.ObserveDataSourcesManagerApplicationComponent;
import fr.ird.observe.client.datasource.api.ObserveSwingDataSource;
import fr.ird.observe.client.datasource.editor.content.ContentMode;
+import fr.ird.observe.client.datasource.editor.content.data.sample.SampleUIModel;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableMeta;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableModel;
import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUI;
-import fr.ird.observe.client.datasource.editor.content.data.table.ContentTableUIModel;
import fr.ird.observe.dto.data.ps.observation.TargetLengthDto;
import fr.ird.observe.dto.data.ps.observation.TargetLengthHelper;
import fr.ird.observe.dto.data.ps.observation.TargetSampleDto;
import fr.ird.observe.dto.referential.common.SizeMeasureTypeReference;
+import fr.ird.observe.dto.referential.common.SpeciesReference;
+import fr.ird.observe.dto.referential.common.WeightMeasureTypeReference;
import fr.ird.observe.navigation.model.select.ObserveSelectModelApplicationComponent;
import fr.ird.observe.navigation.model.select.ObserveSelectNode;
@@ -47,10 +50,7 @@ import java.util.List;
* @author Tony Chemit - dev(a)tchemit.fr
* @since XXX
*/
-public class TargetSampleUIModel extends ContentTableUIModel<TargetSampleDto, TargetLengthDto> {
-
- public static final String PROPERTY_DEFAULT_SIZE_MEASURE_TYPE = "defaultSizeMeasureType";
- private SizeMeasureTypeReference defaultSizeMeasureType;
+public class TargetSampleUIModel extends SampleUIModel<TargetSampleDto, TargetLengthDto> {
public TargetSampleUIModel(TargetSampleUI ui) {
@@ -120,13 +120,43 @@ public class TargetSampleUIModel extends ContentTableUIModel<TargetSampleDto, Ta
return mainDataSource.getPsObservationTargetSampleService().canUseTargetSample(selectedId, ((TargetSampleUI)ui).getHandler().isDiscarded());
}
- public SizeMeasureTypeReference getDefaultSizeMeasureType() {
- return defaultSizeMeasureType;
+ @Override
+ public SpeciesReference getSpecies() {
+ return getTableEditBean().getSpecies();
+ }
+
+ @Override
+ public SizeMeasureTypeReference getSizeMeasureType() {
+ return getTableEditBean().getSizeMeasureType();
+ }
+
+ @Override
+ public WeightMeasureTypeReference getWeightMeasureType() {
+ return getTableEditBean().getWeightMeasureType();
+ }
+
+ @Override
+ public int getAcquisitionMode() {
+ return getTableEditBean().getAcquisitionMode();
}
- public void setDefaultSizeMeasureType(SizeMeasureTypeReference defaultSizeMeasureType) {
- SizeMeasureTypeReference oldValue = getDefaultSizeMeasureType();
- this.defaultSizeMeasureType = defaultSizeMeasureType;
- firePropertyChange(PROPERTY_DEFAULT_SIZE_MEASURE_TYPE, oldValue, defaultSizeMeasureType);
+ @Override
+ public void setAcquisitionMode(int acquisitionMode) {
+ getTableEditBean().setAcquisitionMode(acquisitionMode);
+ }
+
+ @Override
+ public AcquisitionMode getDefaultAcquisitionMode() {
+ return AcquisitionMode.byEffectif;
+ }
+
+ @Override
+ public void setWeightMeasureType(WeightMeasureTypeReference weightMeasureType) {
+ getTableEditBean().setWeightMeasureType(weightMeasureType);
+ }
+
+ @Override
+ public void setSizeMeasureType(SizeMeasureTypeReference sizeMeasureType) {
+ getTableEditBean().setSizeMeasureType(sizeMeasureType);
}
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/609458e569676062840eccc58…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/609458e569676062840eccc58…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 3 commits: [LL][Echantillon logbook] Cosmétique (Partie dto, persistence)- See #1536
by Tony CHEMIT 03 Jul '20
by Tony CHEMIT 03 Jul '20
03 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
784f68dc by Tony Chemit at 2020-07-03T20:02:16+02:00
[LL][Echantillon logbook] Cosmétique (Partie dto, persistence)- See #1536
- - - - -
fb6242ad by Tony Chemit at 2020-07-03T20:02:35+02:00
[LL][Echantillon logbook] Cosmétique (Partie ui commune)- See #1536
- - - - -
48fc9d3c by Tony Chemit at 2020-07-03T20:02:41+02:00
[LL][Echantillon logbook] Cosmétique (Partie ui ll)- See #1536
- - - - -
30 changed files:
- client-core/src/main/java/fr/ird/observe/client/util/ObserveKeyStrokesSupport.java
- client-datasource-editor-common/src/main/i18n/getters/java.getter
- client-datasource-editor-common/src/main/i18n/getters/jaxx.getter
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/SampleUI.java
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/SampleUIHandler.java
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/SampleUIModel.java
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/actions/ResetSizeMeasureType.java
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/actions/ResetWeightMeasureType.java
- + client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/actions/SampleUIActionSupport.java
- client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/ref/common/SpeciesUI.jaxx
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUI.jcss → client-datasource-editor-common/src/main/resources/fr/ird/observe/client/datasource/editor/content/data/sample/CommonSample.jcss
- client-datasource-editor-ll/src/main/i18n/getters/jaxx.getter
- + client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SampleImplHandler.java
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUI.jaxx
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUIHandler.java
- client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUIModel.java
- dto/src/main/models/Observe-01-referential-common.model
- dto/src/main/models/Observe-20-data-ps-observation.model
- observe-i18n/src/main/i18n/translations/observe_en_GB.properties
- observe-i18n/src/main/i18n/translations/observe_es_ES.properties
- observe-i18n/src/main/i18n/translations/observe_fr_FR.properties
- persistence/src/main/java/fr/ird/observe/entities/migration/DataSourceMigrationForVersion_8_0.java
- persistence/src/main/models/Observe-01-referential-common.model
- persistence/src/main/models/Observe-20-data-ps-observation.model
- persistence/src/main/resources/db/migration/8.0/101_create_common_schema-common.sql
- persistence/src/main/resources/db/migration/8.0/103_create_ps_observation_schema-common.sql
- services-local/src/test/java/fr/ird/observe/services/local/service/actions/synchro/UnidirectionalSynchronizeReferentialTest.java
- test/src/main/resources/db/8.0/dataForTestLongline.sql.gz
- test/src/main/resources/db/8.0/dataForTestSeine.sql.gz
- test/src/main/resources/db/8.0/empty_h2.sql.gz
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/5fed91105ea933babc780ad8…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/5fed91105ea933babc780ad8…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 2 commits: [PS] Pratiques de remise à l'eau, cétacés non trouvés - Closes #1564 (report v8)
by Tony CHEMIT 03 Jul '20
by Tony CHEMIT 03 Jul '20
03 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
602e639c by Tony Chemit at 2020-07-02T12:20:58+02:00
[PS] Pratiques de remise à l'eau, cétacés non trouvés - Closes #1564 (report v8)
- - - - -
5fed9110 by Tony Chemit at 2020-07-03T19:24:41+02:00
le reset reste actif sur les éditeurs de nombres même si ceci ne sont pas actif - Closes #1568
le reset des combo box ne fonctionne pas bien (alors que l'action associée Ctrl+D est ok) - Closes #1569
- - - - -
10 changed files:
- client-configuration/src/main/config/Client.ini
- client-configuration/src/main/i18n/getters/config.getter
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUIHandler.java
- observe-i18n/src/main/i18n/translations/observe_en_GB.properties
- observe-i18n/src/main/i18n/translations/observe_es_ES.properties
- observe-i18n/src/main/i18n/translations/observe_fr_FR.properties
- pom.xml
- server-core/src/main/filtered-resources/mapping
- services-local/src/main/java/fr/ird/observe/services/local/service/referential/ReferentialServiceLocal.java
- services/src/main/java/fr/ird/observe/services/service/referential/ReferentialService.java
Changes:
=====================================
client-configuration/src/main/config/Client.ini
=====================================
@@ -402,12 +402,6 @@ key = sizeMeasureType.seine.observation.targetSample
type = String[]
defaultValue = [\"fr.ird.referential.common.SizeMeasureType#1433499466774#0.529249255312607\", \"fr.ird.referential.common.SizeMeasureType#1433499465700#0.0902433863375336\"]
-[option speciesGroupSeineObservationNonTargetCatchReleaseId]
-description = observe.config.speciesGroup.seine.observation.nonTargetCatchRelease
-key = speciesGroup.seine.observation.nonTargetCatchRelease
-type = String[]
-defaultValue = [\"fr.ird.referential.common.SpeciesGroup#1445863056144#0.9820877553253712\", \"fr.ird.referential.common.SpeciesGroup#1239832683690#0.24333033683679461\", \"fr.ird.referential.common.SpeciesGroup#1446014286433#0.6480183366605247\", \"fr.ird.referential.common.SpeciesGroup#1239832683689#0.7120116158620075\"]
-
[option speciesListSeineObservationSchoolEstimateId]
description = observe.config.speciesList.seine.observation.schoolEstimate
key = speciesList.seine.observation.schoolEstimate
=====================================
client-configuration/src/main/i18n/getters/config.getter
=====================================
@@ -77,7 +77,6 @@ observe.config.showMigrationSql
observe.config.showSql
observe.config.simplifiedObjectTypeSpecializedRules.description
observe.config.sizeMeasureType.seine.observation.targetSample
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease
observe.config.speciesList.longline.common.trip
observe.config.speciesList.longline.depredator
observe.config.speciesList.longline.landing
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUIHandler.java
=====================================
@@ -115,7 +115,8 @@ public class NonTargetCatchReleaseUIHandler extends ContentTableUIHandler<SetNon
private ReferentialReferencesFilter<SpeciesDto, SpeciesReference> newSpeciesList() {
return incomingReferences -> {
- ReferentialDtoReferenceSet<SpeciesReference> sampleSpecies = getPsObservationNonTargetCatchReleaseService().getSampleSpecies(getModel().getSelectedId(), getClientConfig().getSpeciesGroupSeineObservationNonTargetCatchReleaseId());
+ String[] speciesGroupIds = speciesGroupDtoMap.keySet().toArray(new String[0]);
+ ReferentialDtoReferenceSet<SpeciesReference> sampleSpecies = getPsObservationNonTargetCatchReleaseService().getSampleSpecies(getModel().getSelectedId(), speciesGroupIds);
return new LinkedList<>(sampleSpecies.toSet());
};
}
@@ -124,7 +125,7 @@ public class NonTargetCatchReleaseUIHandler extends ContentTableUIHandler<SetNon
public void afterInit(NonTargetCatchReleaseUI ui) {
super.afterInit(ui);
speciesGroupDtoMap = new TreeMap<>();
- getReferentialService().getReferentialDtoSet(SpeciesGroupDto.class, null, getClientConfig().getSpeciesGroupSeineObservationNonTargetCatchReleaseId()).forEach(id -> speciesGroupDtoMap.put(id.getId(), id));
+ getReferentialService().loadSensibleSpeciesGroup().forEach(id -> speciesGroupDtoMap.put(id.getId(), id));
}
@Override
=====================================
observe-i18n/src/main/i18n/translations/observe_en_GB.properties
=====================================
@@ -529,7 +529,6 @@ observe.config.showMigrationSql=Show migration sql queries
observe.config.showSql=Show sql
observe.config.simplifiedObjectTypeSpecializedRules.description=simplified object type specialized rules
observe.config.sizeMeasureType.seine.observation.targetSample=Size measure types used to filter target sample species
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease=Species groups used to filter non target catch release species
observe.config.speciesList.longline.common.trip=Species for trip longline
observe.config.speciesList.longline.depredator=Species for observation depredator
observe.config.speciesList.longline.landing=Species for logbook landings
=====================================
observe-i18n/src/main/i18n/translations/observe_es_ES.properties
=====================================
@@ -529,7 +529,6 @@ observe.config.showMigrationSql=Mostrar en los logs las consultas realizadas dur
observe.config.showSql=Mostrar en todas las consultas sql ejecutadas
observe.config.simplifiedObjectTypeSpecializedRules.description=simplified object type specialized rules \#TODO
observe.config.sizeMeasureType.seine.observation.targetSample=Size measure types used to filter target sample species \#TODO
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease=Species groups used to filter non target catch release species \#TODO
observe.config.speciesList.longline.common.trip=Espèces ciébles pour les marées Palangre
observe.config.speciesList.longline.depredator=Espèces pour les déprédations
observe.config.speciesList.longline.landing=Espèces pour les débarquements Logbook
=====================================
observe-i18n/src/main/i18n/translations/observe_fr_FR.properties
=====================================
@@ -529,7 +529,6 @@ observe.config.showMigrationSql=Afficher dans les logs les requêtes jouées lor
observe.config.showSql=Afficher dans les logs toutes les requêtes sql executées
observe.config.simplifiedObjectTypeSpecializedRules.description=Liste des règles supplémantaires pour la détermination du type simplifié d'un DCP
observe.config.sizeMeasureType.seine.observation.targetSample=Types de mesures de taille utilisées dans les captures d'espèces ciblées
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease=Groupes d'espèces utilisés dans les mode de libération
observe.config.speciesList.longline.common.trip=Espèces ciébles pour les marées Palangre
observe.config.speciesList.longline.depredator=Espèces pour les déprédations
observe.config.speciesList.longline.landing=Espèces pour les débarquements Logbook
=====================================
pom.xml
=====================================
@@ -170,7 +170,7 @@
<!-- <lib.version.java4all.topia>1.17</lib.version.java4all.topia>-->
<!-- <lib.version.java4all.eugene>3.0-alpha-34-SNAPSHOT</lib.version.java4all.eugene>-->
-<!-- <lib.version.java4all.jaxx>3.0-alpha-72-SNAPSHOT</lib.version.java4all.jaxx>-->
+ <lib.version.java4all.jaxx>3.0-alpha-74</lib.version.java4all.jaxx>
<!--<lib.version.java4all.application-context>1.0.3-SNAPSHOT</lib.version.java4all.application-context>-->
<!--<lib.version.java4all.application-template>1.0.2-SNAPSHOT</lib.version.java4all.application-template>-->
<!--<lib.version.java4all.i18n>4.0-beta-3-SNAPSHOT</lib.version.java4all.i18n>-->
=====================================
server-core/src/main/filtered-resources/mapping
=====================================
@@ -271,6 +271,7 @@ GET /api/v1/referential/ReferentialService/loadDto
POST /api/v1/referential/ReferentialService/loadDtoList v1.referential.ReferentialServiceRestApi.loadDtoList
GET /api/v1/referential/ReferentialService/loadForm v1.referential.ReferentialServiceRestApi.loadForm
GET /api/v1/referential/ReferentialService/loadReference v1.referential.ReferentialServiceRestApi.loadReference
+GET /api/v1/referential/ReferentialService/loadSensibleSpeciesGroup v1.referential.ReferentialServiceRestApi.loadSensibleSpeciesGroup
GET /api/v1/referential/ReferentialService/preCreate v1.referential.ReferentialServiceRestApi.preCreate
POST /api/v1/referential/ReferentialService/replaceReference v1.referential.ReferentialServiceRestApi.replaceReference
POST /api/v1/referential/ReferentialService/save v1.referential.ReferentialServiceRestApi.save
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/referential/ReferentialServiceLocal.java
=====================================
@@ -33,6 +33,7 @@ import fr.ird.observe.dto.reference.ReferentialDtoReferenceSet;
import fr.ird.observe.dto.referential.ReferenceStatus;
import fr.ird.observe.dto.referential.ReferentialDto;
import fr.ird.observe.dto.referential.ReferentialLocale;
+import fr.ird.observe.dto.referential.common.SpeciesGroupDto;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.entities.ObserveEntityEnum;
import fr.ird.observe.entities.ObserveTopiaPersistenceContext;
@@ -135,6 +136,12 @@ public class ReferentialServiceLocal extends ObserveServiceLocal implements Refe
return spi.toDto(getReferentialLocale(), type, entities);
}
+ @Override
+ public ImmutableSet<SpeciesGroupDto> loadSensibleSpeciesGroup() {
+ ImmutableSet<SpeciesGroupDto> speciesGroups = loadDtoList(SpeciesGroupDto.class);
+ return ImmutableSet.copyOf(speciesGroups.stream().filter(t -> !t.isSpeciesGroupReleaseModeEmpty()).collect(Collectors.toSet()));
+ }
+
@Override
public <D extends ReferentialDto> D loadDto(Class<D> type, String id) {
ReferentialEntity<D, ?> entity = loadEntity(type, id);
=====================================
services/src/main/java/fr/ird/observe/services/service/referential/ReferentialService.java
=====================================
@@ -28,6 +28,7 @@ import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.ReferentialDtoReference;
import fr.ird.observe.dto.reference.ReferentialDtoReferenceSet;
import fr.ird.observe.dto.referential.ReferentialDto;
+import fr.ird.observe.dto.referential.common.SpeciesGroupDto;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.services.service.ObserveService;
import fr.ird.observe.services.spi.ReadDataPermission;
@@ -67,6 +68,10 @@ public interface ReferentialService extends ObserveService {
@ReadReferentialPermission
<D extends ReferentialDto> ImmutableSet<D> getReferentialDtoSet(Class<D> type, @Nullable Date lastUpdateDate, String... ids);
+ @ReadReferentialPermission
+ @Get
+ ImmutableSet<SpeciesGroupDto> loadSensibleSpeciesGroup();
+
@ReadReferentialPermission
@Get
<D extends ReferentialDto> D loadDto(Class<D> type, String id);
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/9cb293850605b3ecb0a92206…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/9cb293850605b3ecb0a92206…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop-7.x] le reset reste actif sur les éditeurs de nombres même si ceci ne sont pas actif - Closes #1568
by Tony CHEMIT 03 Jul '20
by Tony CHEMIT 03 Jul '20
03 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
82cbd449 by Tony Chemit at 2020-07-03T19:25:23+02:00
le reset reste actif sur les éditeurs de nombres même si ceci ne sont pas actif - Closes #1568
le reset des combo box ne fonctionne pas bien (alors que l'action associée Ctrl+D est ok) - Closes #1569
- - - - -
1 changed file:
- pom.xml
Changes:
=====================================
pom.xml
=====================================
@@ -166,7 +166,7 @@
<observeToolkitVersion>3.7.29</observeToolkitVersion>
<!--<lib.version.java4all.http>1.0.13</lib.version.java4all.http>-->
<!--<lib.version.java4all.config>1.0.3</lib.version.java4all.config>-->
- <!--<lib.version.java4all.jaxx>3.0-alpha-69-SNAPSHOT</lib.version.java4all.jaxx>-->
+ <lib.version.java4all.jaxx>3.0-alpha-74</lib.version.java4all.jaxx>
<!--<lib.version.java4all.i18n>4.0-beta-8-SNAPSHOT</lib.version.java4all.i18n>-->
<!--<lib.version.nuiton.topia>3.6-SNAPSHOT</lib.version.nuiton.topia>-->
<!--<lib.version.java4all.eugene>3.0-alpha-21</lib.version.java4all.eugene>-->
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/82cbd449c24922b1cbf241457…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/82cbd449c24922b1cbf241457…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] [PS] Pratiques de remise à l'eau, cétacés non trouvés - Closes #1564 (report v8)
by Tony CHEMIT 02 Jul '20
by Tony CHEMIT 02 Jul '20
02 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
9cb29385 by Tony Chemit at 2020-07-02T12:17:19+02:00
[PS] Pratiques de remise à l'eau, cétacés non trouvés - Closes #1564 (report v8)
- - - - -
8 changed files:
- client-configuration/src/main/config/Client.ini
- client-configuration/src/main/i18n/getters/config.getter
- client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUIHandler.java
- observe-i18n/src/main/i18n/translations/observe_en_GB.properties
- observe-i18n/src/main/i18n/translations/observe_es_ES.properties
- observe-i18n/src/main/i18n/translations/observe_fr_FR.properties
- services-local/src/main/java/fr/ird/observe/services/local/service/referential/ReferentialServiceLocal.java
- services/src/main/java/fr/ird/observe/services/service/referential/ReferentialService.java
Changes:
=====================================
client-configuration/src/main/config/Client.ini
=====================================
@@ -402,12 +402,6 @@ key = sizeMeasureType.seine.observation.targetSample
type = String[]
defaultValue = [\"fr.ird.referential.common.SizeMeasureType#1433499466774#0.529249255312607\", \"fr.ird.referential.common.SizeMeasureType#1433499465700#0.0902433863375336\"]
-[option speciesGroupSeineObservationNonTargetCatchReleaseId]
-description = observe.config.speciesGroup.seine.observation.nonTargetCatchRelease
-key = speciesGroup.seine.observation.nonTargetCatchRelease
-type = String[]
-defaultValue = [\"fr.ird.referential.common.SpeciesGroup#1445863056144#0.9820877553253712\", \"fr.ird.referential.common.SpeciesGroup#1239832683690#0.24333033683679461\", \"fr.ird.referential.common.SpeciesGroup#1446014286433#0.6480183366605247\", \"fr.ird.referential.common.SpeciesGroup#1239832683689#0.7120116158620075\"]
-
[option speciesListSeineObservationSchoolEstimateId]
description = observe.config.speciesList.seine.observation.schoolEstimate
key = speciesList.seine.observation.schoolEstimate
=====================================
client-configuration/src/main/i18n/getters/config.getter
=====================================
@@ -77,7 +77,6 @@ observe.config.showMigrationSql
observe.config.showSql
observe.config.simplifiedObjectTypeSpecializedRules.description
observe.config.sizeMeasureType.seine.observation.targetSample
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease
observe.config.speciesList.longline.common.trip
observe.config.speciesList.longline.depredator
observe.config.speciesList.longline.landing
=====================================
client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUIHandler.java
=====================================
@@ -115,7 +115,8 @@ public class NonTargetCatchReleaseUIHandler extends ContentTableUIHandler<SetNon
private ReferentialReferencesFilter<SpeciesDto, SpeciesReference> newSpeciesList() {
return incomingReferences -> {
- ReferentialDtoReferenceSet<SpeciesReference> sampleSpecies = getPsObservationNonTargetCatchReleaseService().getSampleSpecies(getModel().getSelectedId(), getClientConfig().getSpeciesGroupSeineObservationNonTargetCatchReleaseId());
+ String[] speciesGroupIds = speciesGroupDtoMap.keySet().toArray(new String[0]);
+ ReferentialDtoReferenceSet<SpeciesReference> sampleSpecies = getPsObservationNonTargetCatchReleaseService().getSampleSpecies(getModel().getSelectedId(), speciesGroupIds);
return new LinkedList<>(sampleSpecies.toSet());
};
}
@@ -124,7 +125,7 @@ public class NonTargetCatchReleaseUIHandler extends ContentTableUIHandler<SetNon
public void afterInit(NonTargetCatchReleaseUI ui) {
super.afterInit(ui);
speciesGroupDtoMap = new TreeMap<>();
- getReferentialService().getReferentialDtoSet(SpeciesGroupDto.class, null, getClientConfig().getSpeciesGroupSeineObservationNonTargetCatchReleaseId()).forEach(id -> speciesGroupDtoMap.put(id.getId(), id));
+ getReferentialService().loadSensibleSpeciesGroup().forEach(id -> speciesGroupDtoMap.put(id.getId(), id));
}
@Override
=====================================
observe-i18n/src/main/i18n/translations/observe_en_GB.properties
=====================================
@@ -529,7 +529,6 @@ observe.config.showMigrationSql=Show migration sql queries
observe.config.showSql=Show sql
observe.config.simplifiedObjectTypeSpecializedRules.description=simplified object type specialized rules
observe.config.sizeMeasureType.seine.observation.targetSample=Size measure types used to filter target sample species
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease=Species groups used to filter non target catch release species
observe.config.speciesList.longline.common.trip=Species for trip longline
observe.config.speciesList.longline.depredator=Species for observation depredator
observe.config.speciesList.longline.landing=Species for logbook landings
=====================================
observe-i18n/src/main/i18n/translations/observe_es_ES.properties
=====================================
@@ -529,7 +529,6 @@ observe.config.showMigrationSql=Mostrar en los logs las consultas realizadas dur
observe.config.showSql=Mostrar en todas las consultas sql ejecutadas
observe.config.simplifiedObjectTypeSpecializedRules.description=simplified object type specialized rules \#TODO
observe.config.sizeMeasureType.seine.observation.targetSample=Size measure types used to filter target sample species \#TODO
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease=Species groups used to filter non target catch release species \#TODO
observe.config.speciesList.longline.common.trip=Espèces ciébles pour les marées Palangre
observe.config.speciesList.longline.depredator=Espèces pour les déprédations
observe.config.speciesList.longline.landing=Espèces pour les débarquements Logbook
=====================================
observe-i18n/src/main/i18n/translations/observe_fr_FR.properties
=====================================
@@ -529,7 +529,6 @@ observe.config.showMigrationSql=Afficher dans les logs les requêtes jouées lor
observe.config.showSql=Afficher dans les logs toutes les requêtes sql executées
observe.config.simplifiedObjectTypeSpecializedRules.description=Liste des règles supplémantaires pour la détermination du type simplifié d'un DCP
observe.config.sizeMeasureType.seine.observation.targetSample=Types de mesures de taille utilisées dans les captures d'espèces ciblées
-observe.config.speciesGroup.seine.observation.nonTargetCatchRelease=Groupes d'espèces utilisés dans les mode de libération
observe.config.speciesList.longline.common.trip=Espèces ciébles pour les marées Palangre
observe.config.speciesList.longline.depredator=Espèces pour les déprédations
observe.config.speciesList.longline.landing=Espèces pour les débarquements Logbook
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/referential/ReferentialServiceLocal.java
=====================================
@@ -33,6 +33,7 @@ import fr.ird.observe.dto.reference.ReferentialDtoReferenceSet;
import fr.ird.observe.dto.referential.ReferenceStatus;
import fr.ird.observe.dto.referential.ReferentialDto;
import fr.ird.observe.dto.referential.ReferentialLocale;
+import fr.ird.observe.dto.referential.common.SpeciesGroupDto;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.entities.ObserveEntityEnum;
import fr.ird.observe.entities.ObserveTopiaPersistenceContext;
@@ -135,6 +136,12 @@ public class ReferentialServiceLocal extends ObserveServiceLocal implements Refe
return spi.toDto(getReferentialLocale(), type, entities);
}
+ @Override
+ public ImmutableSet<SpeciesGroupDto> loadSensibleSpeciesGroup() {
+ ImmutableSet<SpeciesGroupDto> speciesGroups = loadDtoList(SpeciesGroupDto.class);
+ return ImmutableSet.copyOf(speciesGroups.stream().filter(t -> !t.isSpeciesGroupReleaseModeEmpty()).collect(Collectors.toSet()));
+ }
+
@Override
public <D extends ReferentialDto> D loadDto(Class<D> type, String id) {
ReferentialEntity<D, ?> entity = loadEntity(type, id);
=====================================
services/src/main/java/fr/ird/observe/services/service/referential/ReferentialService.java
=====================================
@@ -28,6 +28,7 @@ import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.ReferentialDtoReference;
import fr.ird.observe.dto.reference.ReferentialDtoReferenceSet;
import fr.ird.observe.dto.referential.ReferentialDto;
+import fr.ird.observe.dto.referential.common.SpeciesGroupDto;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.services.service.ObserveService;
import fr.ird.observe.services.spi.ReadDataPermission;
@@ -67,6 +68,10 @@ public interface ReferentialService extends ObserveService {
@ReadReferentialPermission
<D extends ReferentialDto> ImmutableSet<D> getReferentialDtoSet(Class<D> type, @Nullable Date lastUpdateDate, String... ids);
+ @ReadReferentialPermission
+ @Get
+ ImmutableSet<SpeciesGroupDto> loadSensibleSpeciesGroup();
+
@ReadReferentialPermission
@Get
<D extends ReferentialDto> D loadDto(Class<D> type, String id);
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/9cb293850605b3ecb0a92206e…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/9cb293850605b3ecb0a92206e…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop-7.x] [PS] Pratiques de remise à l'eau, cétacés non trouvés - Closes #1564
by Tony CHEMIT 02 Jul '20
by Tony CHEMIT 02 Jul '20
02 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
b5a3eb17 by Tony Chemit at 2020-07-02T12:10:40+02:00
[PS] Pratiques de remise à l'eau, cétacés non trouvés - Closes #1564
- - - - -
5 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIHandler.java
- − dto/src/main/java/fr/ird/observe/dto/referential/SpeciesGroupHelper.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/seine/NonTargetCatchReleaseServiceLocal.java
- services-local/src/main/java/fr/ird/observe/services/local/service/referential/ReferentialServiceLocal.java
- services/src/main/java/fr/ird/observe/services/service/data/seine/NonTargetCatchReleaseService.java
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIHandler.java
=====================================
@@ -21,6 +21,7 @@
*/
package fr.ird.observe.client.ui.content.data.seine;
+import com.google.common.collect.ImmutableSet;
import fr.ird.observe.client.constants.AcquisitionMode;
import fr.ird.observe.client.db.constants.DataContextType;
import fr.ird.observe.client.ui.content.ContentMode;
@@ -42,8 +43,8 @@ import fr.ird.observe.dto.referential.seine.NonTargetCatchReleaseConformityRefer
import fr.ird.observe.dto.referential.seine.NonTargetCatchReleaseStatusReference;
import fr.ird.observe.dto.referential.seine.NonTargetCatchReleasingTimeReference;
import fr.ird.observe.dto.result.SaveResultDto;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.validator.NuitonValidatorScope;
@@ -85,8 +86,11 @@ public class NonTargetCatchReleaseUIHandler extends ContentTableUIHandler<SetSei
updateSpecies(species);
}
};
+
addReferentialFilter(NonTargetCatchReleaseDto.PROPERTY_SPECIES, incomingReferences -> {
- ReferentialDtoReferenceSet<SpeciesReference> sampleSpecies = getNonTargetCatchReleaseService().getSampleSpecies(getSelectedParentId());
+
+ ImmutableSet<String> speciesGroupIds = ImmutableSet.copyOf(speciesGroupDtoMap.keySet());
+ ReferentialDtoReferenceSet<SpeciesReference> sampleSpecies = getNonTargetCatchReleaseService().getSampleSpecies(getSelectedParentId(), speciesGroupIds);
return new LinkedList<>(sampleSpecies.toSet());
});
}
=====================================
dto/src/main/java/fr/ird/observe/dto/referential/SpeciesGroupHelper.java deleted
=====================================
@@ -1,36 +0,0 @@
-package fr.ird.observe.dto.referential;
-
-/*-
- * #%L
- * ObServe :: Dto
- * %%
- * Copyright (C) 2008 - 2020 IRD, Code Lutin, Ultreia.io
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-3.0.html>.
- * #L%
- */
-
-import java.util.Arrays;
-import java.util.List;
-
-public class SpeciesGroupHelper extends GeneratedSpeciesGroupHelper {
- //FIXME PROTECTED-ID
- public static final List<String> SPECIES_GROUP_IDS = Arrays.asList(
- "fr.ird.observe.entities.referentiel.SpeciesGroup#1445863056144#0.9820877553253712",
- "fr.ird.observe.entities.referentiel.SpeciesGroup#1239832683690#0.24333033683679461",
- "fr.ird.observe.entities.referentiel.SpeciesGroup#1446014286433#0.6480183366605247",
- "fr.ird.observe.entities.referentiel.SpeciesGroup#1239832683689#0.7120116158620075"
- );
-}
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/seine/NonTargetCatchReleaseServiceLocal.java
=====================================
@@ -22,11 +22,11 @@ package fr.ird.observe.services.local.service.data.seine;
* #L%
*/
+import com.google.common.collect.ImmutableSet;
import fr.ird.observe.dto.data.seine.SetSeineNonTargetCatchReleaseDto;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.ReferentialDtoReferenceSet;
import fr.ird.observe.dto.referential.SpeciesReference;
-import fr.ird.observe.dto.referential.SpeciesGroupHelper;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.entities.seine.NonTargetCatch;
import fr.ird.observe.entities.seine.SetSeine;
@@ -45,7 +45,7 @@ public class NonTargetCatchReleaseServiceLocal extends ObserveServiceLocal imple
private static final Logger log = LogManager.getLogger(NonTargetCatchReleaseServiceLocal.class);
@Override
- public ReferentialDtoReferenceSet<SpeciesReference> getSampleSpecies(String setSeineId) {
+ public ReferentialDtoReferenceSet<SpeciesReference> getSampleSpecies(String setSeineId, ImmutableSet<String> speciesGroupIds) {
if (log.isTraceEnabled()) {
log.trace("getSampleSpecies(" + setSeineId + ")");
}
@@ -55,7 +55,7 @@ public class NonTargetCatchReleaseServiceLocal extends ObserveServiceLocal imple
return SPECIES_SPI.toReferentialReferenceSet(setSeine.getNonTargetCatch().stream()
.map(NonTargetCatch::getSpecies)
.distinct()
- .filter(s -> SpeciesGroupHelper.SPECIES_GROUP_IDS.contains(s.getSpeciesGroup().getTopiaId()))
+ .filter(s -> speciesGroupIds.contains(s.getSpeciesGroup().getTopiaId()))
.collect(Collectors.toList()), getReferentialLocale(), null);
}
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/referential/ReferentialServiceLocal.java
=====================================
@@ -43,7 +43,6 @@ import fr.ird.observe.dto.referential.ReferentialDto;
import fr.ird.observe.dto.referential.ReferentialLocale;
import fr.ird.observe.dto.referential.SpeciesDto;
import fr.ird.observe.dto.referential.SpeciesGroupDto;
-import fr.ird.observe.dto.referential.SpeciesGroupHelper;
import fr.ird.observe.dto.referential.seine.ObservedSystemReference;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.entities.ObserveDataEntity;
@@ -96,6 +95,7 @@ import java.util.Objects;
import java.util.Optional;
import java.util.Set;
import java.util.function.Predicate;
+import java.util.stream.Collector;
import java.util.stream.Collectors;
/**
@@ -169,11 +169,8 @@ public class ReferentialServiceLocal extends ObserveServiceLocal implements Refe
@Override
public ImmutableSet<SpeciesGroupDto> loadSensibleSpeciesGroup() {
- ImmutableSet.Builder<SpeciesGroupDto> result = ImmutableSet.builder();
- for (String speciesGroupId : SpeciesGroupHelper.SPECIES_GROUP_IDS) {
- result.add(loadSpeciesGroup(speciesGroupId));
- }
- return result.build();
+ ImmutableSet<SpeciesGroupDto> speciesGroups = loadDtoList(SpeciesGroupDto.class);
+ return ImmutableSet.copyOf(speciesGroups.stream().filter(t -> !t.isSpeciesGroupReleaseModeEmpty()).collect(Collectors.toSet()));
}
@Override
@@ -307,13 +304,13 @@ public class ReferentialServiceLocal extends ObserveServiceLocal implements Refe
try {
lastUpdateOptional = getLastUpdate(dtoType);
} catch (Exception e) {
- throw new IllegalStateException("Can't find lastUpdateDate for referential: "+dtoType.getName());
+ throw new IllegalStateException("Can't find lastUpdateDate for referential: " + dtoType.getName());
}
ReferentialDtoReferenceSet<R> result = null;
if (lastUpdateOptional.isPresent() && (lastUpdateDate == null || lastUpdateOptional.get().after(lastUpdateDate))) {
List<E> entities = getTopiaPersistenceContext().loadEntities(entityType);
- if (filter!=null) {
- entities = entities.stream().filter(filter).collect(Collectors.toList());
+ if (filter != null) {
+ entities = entities.stream().filter(filter).collect(Collectors.toList());
}
result = toReferentialReferenceSet(spi.toEntityReferenceBinder(), entities, lastUpdateOptional.get());
}
=====================================
services/src/main/java/fr/ird/observe/services/service/data/seine/NonTargetCatchReleaseService.java
=====================================
@@ -22,6 +22,7 @@ package fr.ird.observe.services.service.data.seine;
* #L%
*/
+import com.google.common.collect.ImmutableSet;
import fr.ird.observe.dto.data.seine.SetSeineNonTargetCatchReleaseDto;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.ReferentialDtoReferenceSet;
@@ -41,7 +42,7 @@ public interface NonTargetCatchReleaseService extends ObserveService {
@Get
@ReadDataPermission
- ReferentialDtoReferenceSet<SpeciesReference> getSampleSpecies(String setSeineId);
+ ReferentialDtoReferenceSet<SpeciesReference> getSampleSpecies(String setSeineId, ImmutableSet<String> speciesGroupIds);
@Get
@ReadDataPermission
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/b5a3eb17f937f8e7aea6b7ad1…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/b5a3eb17f937f8e7aea6b7ad1…
You're receiving this email because of your account on gitlab.com.
1
0