Добавить значение параметра по умолчанию во вложенном блоке в преобразование jolt Json - PullRequest
0 голосов
/ 23 апреля 2020

Я должен добавить значение по умолчанию во вложенном блоке. Я пробовал несколько способов добавить значение по умолчанию для вложенного блока. Здесь я попытался установить 0 параметров в качестве значения по умолчанию в jolt spe c, он только добавляет значение по умолчанию для первого объекта. Я должен добавить значение по умолчанию для всех объектов. Может кто-нибудь сказать мне, где я иду не так?

Json Ввод

[
  {
    "code": "123",
    "name": "partner1",
    "type": {
      "name": "Data1"
    }
  },
  {
    "code": "456",
    "name": "Partners2",
    "type": {
      "name": "Data1"
    }
  }
]

Jolt spe c

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "code": "item[&1].code",
        "name": "item[&1].title"
      }
    }
  },
  {
    "operation": "default",
    "spec": {
      "item[]": {
        "0": {
          "description": "lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna.",
          "productData": [
            {
              "text": "",
              "productList": [
                {
                  "title": "Product1",
                  "prodCode": "123"
                }
              ]
            }
          ]
        }
      }
    }
  }
]

Это был вывод:

{
  "item" : [ {
    "code" : "123",
    "title" : "partner1",
    "description" : "lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna.",
    "productData" : [ {
      "text" : "",
      "productList" : [ {
        "title" : "Product1",
        "prodCode" : "123"
      } ]
    } ]
  },
 {
    "code" : "456",
    "title" : "Partners2"
  } ]
}

Но я хочу получить следующий вывод

{
  "item" : [ {
    "code" : "123",
    "title" : "partner1",
    "description" : "lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna.",
    "productData" : [ {
      "text" : "",
      "productList" : [ {
        "title" : "Product1",
        "prodCode" : "123"
      } ]
    } ]
  },
 {
    "code" : "456",
    "title" : "partner2",
    "description" : "lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna.",
    "productData" : [ {
      "text" : "",
      "productList" : [ {
        "title" : "Product1",
        "prodCode" : "123"
      } ]
    } ]
  } ]
}
...