#mule #mule-studio #mule-component #dataweave #mule-esb
#mule #mule-studio #mule-компонент #dataweave #mule-esb
Вопрос:
Моя структура сообщения:
{
"empid": "abc",
"homeCountry": "IND",
"dateOfBirth": "1969-01-01",
"personalInformation": [
{
"salutation": "Mr",
"firstName": "Ram",
"lastName": "Naresh"
}
],
"EmpInfo": [
{
"hireDate": "2000-01-01",
"LevDate": "2018-07-25",
"jobInformation": [
{
"isFullTimeEmployee": true,
"jobTitle": "Engineer",
"effectiveStartDate": "2018-01-05"
},
{
"isFullTimeEmployee": true,
"jobTitle": "Store Manager",
"effectiveStartDate": "2019-01-05"
}
]
}
]
}
Я хотел бы извлечь максимальную дату и тот же индекс, чтобы я мог объявить его как var и использовать его в сопоставлении.
Ответ №1:
Ваш вопрос недостаточно ясен. Какое поле даты вы хотите использовать? Здесь я создал решение, которое возвращает индекс и значение jobInformation
с самым старым effectiveStartDate
payload.EmpInfo[0].jobInformation
map ((item, index) -> {value: item, index: index})
maxBy ((item) -> item.value.effectiveStartDate as Date)