Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[2.4.1 RC] Valeur dénombrement par défault et champs commentaire obs #209

Closed
JeromeMaruejouls opened this issue Mar 21, 2023 · 8 comments
Labels
enhancement New feature or request invalid This doesn't seem right

Comments

@JeromeMaruejouls
Copy link

Deux remarques sur la version RC :

  • Les champs min et max sont 0 par défaut au lieu de 1
  • Il n'y a plus moyen de saisir un commentaire sur les observations (seulement sur les relevés)

Sinon le reste fonctionne parfaitement (testé sur 3 téléphones : Android 13, 12 et 9)

@JeromeMaruejouls JeromeMaruejouls added the enhancement New feature or request label Mar 21, 2023
@DonovanMaillard
Copy link
Collaborator

Merci Jérome,

Ok pour les dénombrement, à voir avec @sgrimault pour fixer ça avant la release à venir.

Pour les commentaires, c'est plus subtil : le paramètre de configuration COMMENT est devenu comment en minuscule... comme MIN et MAX ont évolué.

Soit on repasse en majuscule (pourquoi ce changement?), en remettant MIN et MAX comme avant.Soit il faut tenir la configuration à jour, en laissant l'ancien + le nouveau paramètre pour gérer une flotte à différentes versions.

@DonovanMaillard DonovanMaillard added the invalid This doesn't seem right label Mar 21, 2023
@sgrimault
Copy link
Collaborator

Bonjour,
Le modèle a évolué notamment pour la gestion des médias et aussi pour prendre en compte les évolutions à venir, notamment sur la gestion des champs additionnels. Le modèle d'avant était trop rigide rendant difficile toute évolution du modèle. L'ajout des médias venant complexifier encore plus cet existant, d'où cette refonte pour un modèle totalement dynamique.
L'API de GeoNature réclame un modèle dynamique lors de l'envoi d'un relevé. Exemple d'une occurrence pour un relevé où on retrouve tous les attributs constituant ce taxon :

{
    "id_nomenclature_obs_technique": 37,
    "id_nomenclature_bio_condition": 154,
    "id_nomenclature_bio_status": 30,
    "id_nomenclature_naturalness": 157,
    "id_nomenclature_exist_proof": 77,
    "id_nomenclature_behaviour": 544,
    "id_nomenclature_observation_status": 84,
    "id_nomenclature_blurring": 172,
    "id_nomenclature_source_status": 73,
    "determiner": "Administrateur test",
    "id_nomenclature_determination_method": 438,
    "nom_cite": "Artamus = Artamus  - [GN - 440283]",
    "cd_nom": 440283,
    "meta_v_taxref": null,
    "sample_number_proof": null,
    "digital_proof": null,
    "non_digital_proof": null,
    "comment": null,
    "additional_fields": {
        "Test": null
    },
    "cor_counting_occtax": [
        {
            "id_counting_occtax": null,
            "id_nomenclature_life_stage": 1,
            "id_nomenclature_sex": 168,
            "id_nomenclature_obj_count": 143,
            "id_nomenclature_type_count": 91,
            "count_min": 1,
            "count_max": 1,
            "medias": [],
            "additional_fields": {
                "test_counting": null
            }
        }
    ]
}

Le seule bémol du modèle côté GeoNature est que je dois encore garder un mapping "en dur" pour les attributs préfixés par id_nomenclature_ afin de pouvoir traduire l'équivalent issu de la nomenclature avec l'attendu lors de l'envoi. Exemple :

  • OBJ_DENBR est l'équivalent de id_nomenclature_obj_count.

@sgrimault
Copy link
Collaborator

C'est pourquoi, au niveau du paramétrage, j'ai tout normalisé pour garder une cohérence coté modèle géré par l'application et que la casse est importante (cf. README.md).

@DonovanMaillard
Copy link
Collaborator

Parfait, merci pour les explications,

Ces changements et la logique de conserver les paramètres anciens + nouveaux (pour les flottes ayant plusieurs versions) seront donc mentionnés dans la prochaine note de version.

En revanche, peux-tu mettre des valeurs 1/1 par défaut pour les dénombrements avant la publication de la 2.4.1 s'il te plait (qui s'appellera 2.5 d'ailleurs) ?

@sgrimault
Copy link
Collaborator

À noter qu'il serait possible de "versionner" la configuration de l'application "Occtax" lors de l'appel à la route GET -> /api/gn_commons/t_mobile_apps. Cette route permet notamment de récupérer le paramétrage de l'application ainsi que de déterminer si il y a une version plus à jour en comparant les valeurs de l'attribut version_code.
On pourrait rajouter autant d'entrées qu'il y a de versions disponibles de l'application "Occtax" sur un parc de terminaux pour faciliter une transition en douceur (le temps de pouvoir propager la mise à jour).
Ainsi en fonction de sa version, l'application récupère la bonne entrée correspondante. Et pour garder une certaine compatibilité avec l'existant si jamais elle ne trouve aucune correspondance avec son numéro de version, elle récupère la dernière disponible.
Exemple :

[
  {
    "app_code": "OCCTAX2",
    "id_mobile_app": 3,
    "package": "fr.geonature.occtax2",
    "settings": {
      "area_observation_duration": 365,
      "map": {
        "center": [46, 2],
        "layers": [
          {
            "label": "OSM",
            "source": "https://a.tile.openstreetmap.org"
          },
          {
            "label": "Demo offline",
            "source": "demo_scan.mbtiles"
          },
          {
            "label": "Mailles 5km",
            "source": "mailles5pne.geojson",
            "style": {
              "color": "#FF0000",
              "fill": true,
              "fillColor": "#FF8000",
              "fillOpacity": 0.2,
              "opacity": 0.9,
              "stroke": true,
              "weight": 4
            }
          }
        ],
        "max_bounds": [
          [52, -6],
          [40, 9]
        ],
        "max_zoom": 19.0,
        "min_zoom": 8.0,
        "min_zoom_editing": 12.0,
        "show_compass": true,
        "show_scale": true,
        "start_zoom": 10.0
      },
      "nomenclature": {
        "save_default_values": true,
        "information": [
          "METH_OBS",
          {
            "key": "ETA_BIO"
          },
          {
            "key": "METH_DETERMIN",
            "visible": true,
            "default": false
          },
          {
            "key": "determiner",
            "visible": true,
            "default": false
          },
          {
            "key": "STATUT_BIO",
            "visible": true,
            "default": false
          },
          {
            "key": "NATURALITE",
            "visible": true,
            "default": false
          },
          {
            "key": "PREUVE_EXIST",
            "visible": true,
            "default": false
          },
          {
            "key": "comment",
            "visible": true,
            "default": false
          }
        ],
        "counting": [
          "STADE_VIE",
          "SEXE",
          "OBJ_DENBR",
          "TYP_DENBR",
          "count_min",
          "count_max"
        ]
      },
      "sync": {
        "code_area_type": "M1",
        "geonature_url": "https://demo.geonature.fr/geonature",
        "observers_list_id": 1,
        "page_size": 1000,
        "taxa_list_id": 100,
        "taxhub_url": "https://demo.geonature.fr/taxhub",
        "uh_application_id": 1
      }
    },
    "url_apk": "https://demo.geonature.fr/geonature/api/static/mobile/occtax/occtax-2.4.1-rc4-generic-debug.apk",
    "url_settings": "https://demo.geonature.fr/geonature/api/static/mobile/occtax/settings.json",
    "version_code": "3163"
  },
  {
    "app_code": "OCCTAX2",
    "id_mobile_app": 3,
    "package": "fr.geonature.occtax2",
    "settings": {
      "area_observation_duration": 365,
      "map": {
        "center": [46, 2],
        "layers": [
          {
            "label": "OSM",
            "source": "https://a.tile.openstreetmap.org"
          },
          {
            "label": "Demo offline",
            "source": "demo_scan.mbtiles"
          },
          {
            "label": "Mailles 5km",
            "source": "mailles5pne.geojson",
            "style": {
              "color": "#FF0000",
              "fill": true,
              "fillColor": "#FF8000",
              "fillOpacity": 0.2,
              "opacity": 0.9,
              "stroke": true,
              "weight": 4
            }
          }
        ],
        "max_bounds": [
          [52, -6],
          [40, 9]
        ],
        "max_zoom": 19.0,
        "min_zoom": 8.0,
        "min_zoom_editing": 12.0,
        "show_compass": true,
        "show_scale": true,
        "start_zoom": 10.0
      },
      "sync": {
        "code_area_type": "M1",
        "geonature_url": "https://demo.geonature.fr/geonature",
        "observers_list_id": 1,
        "page_size": 1000,
        "taxa_list_id": 100,
        "taxhub_url": "https://demo.geonature.fr/taxhub",
        "uh_application_id": 1
      }
    },
    "url_apk": "https://demo.geonature.fr/geonature/api/static/mobile/occtax/occtax-2.2.0-generic-release.apk",
    "url_settings": "https://demo.geonature.fr/geonature/api/static/mobile/occtax/settings.json",
    "version_code": "3020"
  }
]

@sgrimault
Copy link
Collaborator

Parfait, merci pour les explications,

Ces changements et la logique de conserver les paramètres anciens + nouveaux (pour les flottes ayant plusieurs versions) seront donc mentionnés dans la prochaine note de version.

En revanche, peux-tu mettre des valeurs 1/1 par défaut pour les dénombrements avant la publication de la 2.4.1 s'il te plait (qui s'appellera 2.5 d'ailleurs) ?

C'est déjà le cas dans la configuration par défaut. Tu veux dire que si on configure la nomenclature dans le fichier de paramétrage, on a plus la valeur par défaut ? Je vais vérifier ce point là.

@DonovanMaillard
Copy link
Collaborator

C'est déjà le cas dans la configuration par défaut. Tu veux dire que si on configure la nomenclature dans le fichier de paramétrage, on a plus la valeur par défaut ? Je vais vérifier ce point là.

C'est pas sur une nomenclature du coup mais sur les compteurs min/max en effet. Pour le moment quand l'input est affichée, par défaut les compteurs sont à 0

Screenshot_20230321_212450_Occtax.jpg

@DonovanMaillard
Copy link
Collaborator

Du coup pour les commentaires, voir la note de version.

Pour les valeurs par défaut, fixé dans la 2.5.0 qui vient de sortir !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request invalid This doesn't seem right
Projects
None yet
Development

No branches or pull requests

3 participants