Modification d’un seuil météo

Ce web-service permet de modifier des seuils météo en PHyC.

Paramètres HTTP

Paramètre

Valeur

Route

seuilmeteo

Méthode

PUT

Contenu

une seuil météo au format json

Droit de gestion

Il faut posséder le rôle ADM OU POLE2 ou POLE4 sur le site météo associé au seuil.

Règle technique

Le seuil météo doit exister.

Le seuil météo doit être bien associé à la grandeur du site météo.

Pour désactiver une valeur de seuil, il faut que l’attribut ValValSeuilMeteo prenne la valeur null.

Contenu de la requête HTTP

La requête HTTP doit contenir un json hydrométrie contenant un seuil météo.

Json hydrométrie

Schéma de validation
{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "$id": "https://phyc.org/ws/modifierSeuilMeteo.json",
    "type": "object",
    "properties": {
        "Scenario": {
            "type": "object"
        },
        "RefHyd": {
            "type": "object",
            "properties": {
                "SeuilsMeteo": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "CdSeuilMeteo": {"type": "integer"},
                            "SiteMeteo": {
                                "type": "object",
                                "properties": {
                                    "CdSiteMeteo": {"type": "string"}
                                },
                                "required": ["CdSiteMeteo"],
                                "additionalProperties": false
                            },
                            "GrdMeteo": {
                                "type": "object",
                                "properties": {
                                    "CdGrdMeteo": {"type": "string"}
                                },
                                "required": ["CdGrdMeteo"],
                                "additionalProperties": false
                            },
                            "TypSeuilMeteo": {"type": "integer"},
                            "NatureSeuilMeteo": {"type": "integer"},
                            "DureeSeuilMeteo": {"type": "integer"},
                            "LbUsuelSeuilMeteo": {"type": ["string", "null"]},
                            "MnSeuilMeteo": {"type": ["string", "null"]},
                            "IndiceGraviteSeuilMeteo": {"type": ["integer", "null"]},
                            "ValForceeSeuilHydro": {"type": "boolean"},
                            "ComSeuilMeteo": {"type": ["string", "null"]},
                            "ValsSeuilMeteo": {
                                "type": "array",
                                "items": {
                                    "type": "object",
                                    "properties": {
                                        "ValValSeuilMeteo": {"type":  ["number", "null"]},
                                        "ToleranceValSeuilMeteo": {"type":  "number"}
                                    },
                                    "required": ["ValValSeuilMeteo"],
                                    "additionalProperties": false
                                },
                                "minItems": 1
                            }
                        },
                        "required": ["CdSeuilMeteo", "SiteMeteo", "GrdMeteo"],
                        "additionalProperties": false
                    },
                    "minItems": 1
                }
            },
            "required": ["SeuilsMeteo"],
            "additionalProperties": false
        }
    },
    "required": ["Scenario", "RefHyd"],
    "additionalProperties": false
}
  • Les attributs RefHyd (associé à l’objet Refhyd) et Scenario sont obligatoires;

  • L’objet RefHyd ne doit contenir qu’un seul attribut SeuilsMeteo associé à une liste non vide d’objets SeuilHydro;

  • L’objet SeuilMeteo doit contenir les attributs CdSeuilMeteo, SiteMeteo, GrdMeteo

  • L’objet SeuilMeteo ne doit pas contenir l’attribut DtMajSeuilMeteo.

  • ValsSeuilMeteo doit être une liste non vide d’objets ValSeuilMeteo;

  • ValSeuilMeteo doit contenir la propriété ValValSeuilMeteo;

  • ValSeuilHydro ne doit pas contenir les propriétés DtActivationValSeuilMeteo et DtDesactivationValSeuilMeteo

Réponse du web-service

En cas de succès, le web-service retournera un json hydrométrie contenant le seuil météo ajouté.

Le web-service renseignera l’attribut CdSeuilMeteo avec le code généré par la PHyC.

Le web-service rajoutera l” attribut DtMajSeuilHydro au seuil hydro.

Le web-service rajoutera l’attribut DtActivationValSeuilMeteo et éventuellement DtDesactivationValSeuilMeteo en cas de désactivation pour les objets ValSeuilMeteo.