Json Mule 4.2-DWL 2.0-groupBy结果后需要删除groupBy
在DWL2.0中执行groupBy操作后,我需要从实际数据中删除groupBy字段及其值 比如说 我有json数组的有效负载,如:Json Mule 4.2-DWL 2.0-groupBy结果后需要删除groupBy,json,mule,mule4,Json,Mule,Mule4,在DWL2.0中执行groupBy操作后,我需要从实际数据中删除groupBy字段及其值 比如说 我有json数组的有效负载,如: [ { "empId": 1, "empName": "James", "deptName": "Sales" }, { "empId": 2, "empName": "ABC", "deptName": "Marketing" }, { "empId": 3, "empName":
[
{
"empId": 1,
"empName": "James",
"deptName": "Sales"
},
{
"empId": 2,
"empName": "ABC",
"deptName": "Marketing"
},
{
"empId": 3,
"empName": "BCD",
"deptName": "Account"
},
{
"empId": 4,
"empName": "EFG",
"deptName": "Sales"
},
{
"empId": 5,
"empName": "HIJK",
"deptName": "Account"
},
{
"empId": 6,
"empName": "LMN",
"deptName": "Sales"
},
{
"empId": 7,
"empName": "OPQR",
"deptName": "Marketing"
}
]
在此添加的转换上执行groupBy-->
但当您查看结果时,实际数据json中不再需要depentName标记。我想从数据json中删除此元素,并希望得到最终结果,如-->
有人能帮我解决这个问题吗?您可以使用mapObject函数重新映射groupBy的结果,然后映射值组结果并删除每个对象中的字段
output application/json
---
payload groupBy ((item) -> item.deptName)
mapObject ((value, key, index) ->
{
(key): value map ((item, index) -> item - "deptName")
})
{
"Sales": [
{
"empId": 1,
"empName": "James",
"deptName": "Sales"
},
{
"empId": 4,
"empName": "EFG",
"deptName": "Sales"
},
{
"empId": 6,
"empName": "LMN",
"deptName": "Sales"
}
],
"Marketing": [
{
"empId": 2,
"empName": "ABC",
"deptName": "Marketing"
},
{
"empId": 7,
"empName": "OPQR",
"deptName": "Marketing"
}
],
"Account": [
{
"empId": 3,
"empName": "BCD",
"deptName": "Account"
},
{
"empId": 5,
"empName": "HIJK",
"deptName": "Account"
}
]
}
{
"Sales": [
{
"empId": 1,
"empName": "James"
},
{
"empId": 4,
"empName": "EFG"
},
{
"empId": 6,
"empName": "LMN"
}
],
"Marketing": [
{
"empId": 2,
"empName": "ABC"
},
{
"empId": 7,
"empName": "OPQR"
}
],
"Account": [
{
"empId": 3,
"empName": "BCD"
},
{
"empId": 5,
"empName": "HIJK"
}
]
}
output application/json
---
payload groupBy ((item) -> item.deptName)
mapObject ((value, key, index) ->
{
(key): value map ((item, index) -> item - "deptName")
})