У меня есть поток Mule, который вызывает два REST API, в результате чего получается две полезной нагрузки json list. Мне нужно получить объединенный список json из этих двух полезных нагрузок.Слияние двух полезных данных json с dataweave
Мне удалось добиться этого с помощью потока рассеянных сборок с помощью специальной стратегии агрегатора. Однако код, который я должен был написать для этого, выглядит довольно грязным, и он медленный.
Есть ли способ достичь этого с помощью dataweave `
вход Json список 1:
[{ "ID": "1", "firstName": "JANE""familyName": "DOE", "Entities": [{ "ID": "515785", "name": "UNKOWN UNITED", "callSign": "UU" }] }, { "ID": "2", "firstName": "JOHN", "familyName": "DOE", "Entities": [{ "Entities_ID": "515785", "name": "UNKOWN UNITED", "callSign": "UU" }] }]
вход Json список 2:
[{ "ID": "1", "firstName": "JANE", "familyName": "DOE", "Entities": [{ "Entities_ID": "8916514", "name": "UNKOWN INCORPORATED", "callSign": "UI" }] }, { "ID": "4", "firstName": "JAKE", "familyName": "DOE", "Entities": [{ "Entities_ID": "8916514", "name": "UNKOWN INCORPORATED", "callSign": "UI" }] }]
требуемый выход объединенный список без дубликатов идентификаторов:
[{ "ID": "1", "firstName": "JANE", "familyName": "DOE", "Entities": [{ "Entities_ID": "515785", "name": "UNKOWN UNITED", "callSign": "UU" }, { "Entities_ID": "8916514", "name": "UNKOWN INCORPORATED", "callSign": "UI" }] }, { "ID": "2", "firstName": "JOHN", "familyName": "DOE", "Entities": [{ "Entities_ID": "515785", "name": "UNKOWN UNITED", "callSign": "UU" }] }, { "ID": "4", "firstName": "JAKE", "familyName": "DOE", "Entities": [{ "Entities_ID": "8916514", "name": "UNKOWN INCORPORATED", "callSign": "UI" }] }]
Это хорошее началу, однако ResultSet должно иметь слиты лицо, в которых в двух списках есть дубликаты идентификаторов. Как это: '[{ \t "ИД": "1", \t "FirstName": "Jane", \t "FamilyName": "МЭ", \t "Объекты": [{ \t \t" Entities_ID ": "515785", \t \t "имя": "UNKOWN ЮНАЙТЕД", \t \t "Позывной": "UU" \t}, \t { \t \t "Entities_ID": "8916514", \t \t "имя": "UNKOWN INCORPORATED", \t \t "Позывной": "UI" \t}] }] ' –
Я обновил ответ найденную проблему в последнем ответе. – AnupamBhusari
Это похоже на трюк, большое спасибо за вашу помощь! –