Jolt 转换 - json 包含结果格式

Jolt Transformation - json contains resut format

请求的主体由2个对象组成,一个是负载,另一个是描述,因为负载必须经过转换才能传输到下一个系统。 请帮忙写一个这样格式的规范:

正文:

{
"input":{
    "items":[
        {
            "id":1,
            "name":"items1",
            "statusId":5
        },
        {
            "id":7,
            "name":"items7",
            "statusId":2
        },

        ...

        {
            "id":N, // any number
            "name":"itemsN",
            "statusId":1
        }
    ]
},
"output":[
    {
        "target":"sg_id",
        "source":"id",
        "type":"list"
    },
    {
        "target":"sg_name",
        "source":"name",
        "type":"list"
    }
]}

结果:

{
"items":{
    "sg_id":[
        1,
        7,
        ...
        N
    ],
    "sg_name":[
        "items1",
        "items7",
        ...
        "itemsN"
    ]
}}

您可以使用 shift 操作,方法是在所需的别名前加上数组的标题 (item.),例如

[{
  "operation": "shift",
  "spec": {
    "input": {
      "items": {
        "*": {
          "id": "items.sg_id",
          "name": "items.sg_name"
        }
      }
    }
  }
}]