# MesoatLRServiceRequest-template.json

{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "$id": "../Documentation/Implementation/data_model/Json/",
    "title": "MesoatLRServiceRequest",
    "description": "MesoatLRServiceRequest template",
    "type": "object",
    "class": "MesoatLRServiceRequest",
    "properties": {
        "serviceType": {
            "type": "string",
            "description": "Le type de service",
            "inputType": "dropdown",
            "label@fr_FR": "Type de service",
            "label@en_GB": "Service type",
            "registries": [
                "MesoatLRServiceType"
            ],
            "tooltip": null,
            "form_label@fr_FR": "Type de service",
            "form_label@en_GB": "Service type"
        },
        "justification": {
            "type": "string",
            "description": "Justification du besoin",
            "inputType": "textarea",
            "label@fr_FR": "Justification",
            "label@en_GB": "justification",
            "tooltip": null,
            "form_label@fr_FR": "Justification de la demande de ressource",
            "form_label@en_GB": "Justification for resource request"
        },
        "dataSize": {
            "type": "number",
            "description": "Volume des données concernées en téraoctets",
            "label@fr_FR": "Taille des données",
            "label@en_GB": "Data size",
            "tooltip": null,
            "form_label@fr_FR": "Volumétrie demandée",
            "form_label@en_GB": "Volume request"
        },
        "volumeUnit": {
            "type": "string",
            "description": "Unité de volume",
            "label@fr_FR": "Unité",
            "label@en_GB": "Unit",
            "tooltip": null,
            "isConst": true,
            "form_label@fr_FR": "Unité",
            "form_label@en_GB": "Unit"
        },
        "storageTime": {
            "type": "string",
            "description": "Durée de stockage (en mois)",
            "inputType": "dropdown",
            "label@fr_FR": "Durée de stockage en mois",
            "label@en_GB": "Storage time (in months)",
            "registries": [
                "MesoatLRStorageTime"
            ],
            "tooltip": null,
            "form_label@fr_FR": "Durée de stockage (en mois)",
            "form_label@en_GB": "Storage time (in months)"
        },
        "timeUnit": {
            "type": "string",
            "description": "Unité de temps",
            "label@fr_FR": "Unité",
            "label@en_GB": "Unit",
            "tooltip": null,
            "hidden": true,
            "form_label@fr_FR": "Unité",
            "form_label@en_GB": "Unit"
        }
    },
    "required": [
        "serviceType",
        "justification",
        "dataSize",
        "volumeUnit",
        "storageTime",
        "timeUnit"
    ],
    "to_string": [
        "$.serviceType",
        " ",
        "(",
        "$.dataSize",
        ")"
    ],
    "default": {
        "fr_FR": {
            "volumeUnit": "To",
            "timeUnit": "mois"
        },
        "en_GB": {
            "volumeUnit": "TB",
            "timeUnit": "months"
        }
    }
}