JSON 到 JSON 使用 JOLT 转换

JSON to JSON using JOLT Transformation

我是 JOLT 的新手,遇到了这个要求,我在网上看到了一些示例,但在我的要求中,我需要在新结构中添加元素。我希望任何人都能理解我想说的

输入JSON

[
    {
        "ROWSET": {
            "ROW": {
                "CLTCORP": "1000",          //This is CorpId
                "CTLITEM": "5000",          //This is CorpItemCd
                "WHID":  "17",              //This is WarehouseId
                "CTLFAC":  "AAHC",          //This is FacilityName
                "CORP":    "001"            //This is CorpItem
            }
        }
    }
]

这是预期的 JSON

{
    "SupplyItemData": {
                        "CorpId": 1000,
                        "CorpItemCd": 5000
                            "Warehouse": [{
                                    "WarehouseId": 17,
                                    "FacilityName": "AAHC"
                                        }]
                            "CorpItem": 001
                        }
}

如有任何帮助或建议,我们将不胜感激。

我关注了几个链接 但无法准确地将其与我的用例联系起来

您可以使用 shift 运算符来执行此操作。首先使用 * 运算符对根级数组进行交互。然后在其中,只需将字段映射到新的字段名称,如下所示。

[
{
    "operation": "shift",
    "spec": {
        "*": {
            "ROWSET": {
                "ROW": {
                    "CLTCORP": "SupplyItemData.CorpId",
                    "CTLITEM": "SupplyItemData.CorpItemCd",
                    "WHID": "SupplyItemData.Warehouse.[0].WarehouseId",
                    "CTLFAC": "SupplyItemData.Warehouse.[0].FacilityName",
                    "CORP": "SupplyItemData.CorpItem"
                }
            }
        }
    }
}
]