【问题标题】:Mule Dataweave - converting array of array into Array of objectMule Dataweave - 将数组数组转换为对象数组
【发布时间】:2022-01-06 04:08:37
【问题描述】:

如果有人可以在下面的 dataweave 表达式上帮助我,那将会很有帮助

[{ “id”:“1001”, “电子邮件”:空,
“角色”:“管理员”, "updatedAt": "2019-12-04T22:39:00.322000Z", “属性”: [ { “id”:“1001A”, “名称”:“地理”, “价值”:空 }, { “id”:“1001B”, “名称”:“组”, “价值”:“管理员” }, { "id": "1001C", “名称”:“标题”, “价值”:空 }, { "id": "1001D", “名称”:“位置”, “价值”:“纽约” } ], “活跃”:假 }, { “id”:“2001”, “电子邮件”:空,
“角色”:“学生”, "updatedAt": "2019-12-05T22:39:00.322000Z", “属性”: [ { "id": "2001A", “名称”:“地理”, “价值”:空 }, { “id”:“2001B”, “名称”:“组”, “价值”:“管理员” }, { "id": "2001C", “名称”:“标题”, “价值”:空 }, { "id": "2001D", “名称”:“位置”, “价值”:“纽约” } ], “活跃”:假 }, { “id”:“3001”, “电子邮件”:空,
“角色”:“管理员”, "updatedAt": "2019-12-04T22:39:00.322000Z", “属性”: [ { "id": "3001A", “名称”:“地理”, “价值”:空 }, { “id”:“3001B”, “名称”:“组”, “价值”:“管理员” }, { “id”:“3001C”, “名称”:“标题”, “价值”:空 }, { “id”:“3001D”, “名称”:“位置”, “价值”:“纽约” } ], “活跃”:假 } ]

我的输出应该如下所示

[ { “id”:“1001”, “电子邮件”:空,
“角色”:“管理员”, "updatedAt": "2019-12-04T22:39:00.322000Z", “地理”:空, “组”:“管理员”, “标题”:空, “地点”:“纽约”, "isActive": false

},
{
    "id": "2001",
    "email": null,            
    "role": "student",
    "updatedAt": "2019-12-05T22:39:00.322000Z", 
    "GEO" : null,
    "Group":"student",
    "Title":null,
    "Location":"New York",
    "isActive": false
},
{
    "id": "3001",
    "email": null,            
    "role": "admin",
    "updatedAt": "2019-12-04T22:39:00.322000Z",
    "GEO" : null,
    "Group":"admin",
    "Title":null,
    "Location":"New York",
    "isActive": false
}

]

【问题讨论】:

    标签: dataweave


    【解决方案1】:

    您可以使用以下 DataWeave 表达式:

    %dw 2.0
    output application/json
    fun toObject(attributes) = ((attributes map ($.name): $.value) reduce ($ ++ $$))
    ---
    payload map (($ - "Attributes") ++ toObject($.Attributes))
    

    使用提供的有效载荷作为输入,输出有效载荷为:

    [
      {
        "id": "1001",
        "email": null,
        "role": "admin",
        "updatedAt": "2019-12-04T22:39:00.322000Z",
        "isActive": false,
        "Location": "New York",
        "Title": null,
        "Group": "admin",
        "GEO": null
      },
      {
        "id": "2001",
        "email": null,
        "role": "student",
        "updatedAt": "2019-12-05T22:39:00.322000Z",
        "isActive": false,
        "Location": "New York",
        "Title": null,
        "Group": "admin",
        "GEO": null
      },
      {
        "id": "3001",
        "email": null,
        "role": "admin",
        "updatedAt": "2019-12-04T22:39:00.322000Z",
        "isActive": false,
        "Location": "New York",
        "Title": null,
        "Group": "admin",
        "GEO": null
      }
    ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-09
      • 2017-05-20
      • 1970-01-01
      • 2016-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-13
      相关资源
      最近更新 更多