Arrays 将元素从子数组转移到父数组
在这里,我尝试将两个子数组中的元素合并到其父数组中,并保留另一个子数组,然后将第二个数组上移到两个级别 是否有一种方法可以根据条件更改值,如下面的输入, parties.party.sno=“1”,是否可以将其更新为parties..sno='Y' 输入:Arrays 将元素从子数组转移到父数组,arrays,jolt,Arrays,Jolt,在这里,我尝试将两个子数组中的元素合并到其父数组中,并保留另一个子数组,然后将第二个数组上移到两个级别 是否有一种方法可以根据条件更改值,如下面的输入, parties.party.sno=“1”,是否可以将其更新为parties..sno='Y' 输入: { "Parties": [ { "party": { "partyId": "100005767", &
{
"Parties": [
{
"party": {
"partyId": "100005767",
"sno": 1,
"fn": "Th1mas",
"ln": "Edison",
"emails": [
{
"emailAddress": "jkjk@ui.com"
}
],
"addresses": [
{
"zip": ""
}
],
"shealth": [
{
"stcd": "TN",
"lno": "1"
}
]
},
"seq": {
"typeCd": "1"
}
}
]
}
预期产出:
{
"person": {
"first_name": "Th1mas",
"middle_initial": "Edison",
"last_name": "",
"email_address": "jkjk@ui.com",
"pinCode": ""
},
"shealth": {
"statecd": "ON"
},
//this is the seq no from party.sno
"primary": "Y",
"typeCd": "1"
}
试过这样的规格:
[
{
"operation": "shift",
"spec": {
"Parties": {
"*": {
"party": {
"emails": {
"*": {
"emailAddress": "[&1].email_address",
"@(2,fn)": "[&1].first_name",
"@(2,ln)": "[&1].last_name"
}
},
"addresses": {
"*": {
"zip": "[&1].pinCode"
}
},
"shealth": {
"*": {
"stcd": "[&1].statecd"
}
}
}
}
}
}
}
]
这个规范有效
"party": {
"sno": {
"1": {
"#Y": "primary"
}
},
尝试从当前级别应用条件
[
{
"operation": "shift",
"spec": {
"Parties": {
"*": {
"party": {
"sno": {
"1": {
"#Y": "primary"
}
},
"emails": {
"*": {
"emailAddress": "person.email_address",
"@(2,fn)": "person.first_name",
"@(2,ln)": "person.last_name"
}
},
"addresses": {
"*": {
"zip": "person.pinCode"
}
},
"shealth": {
"*": {
"stcd": "shealth.statecd"
}
}
},
"seq": {
"typeCd": "typeCd"
}
}
}
}
}
]
非常感谢。这很有效!。如果向输入中再添加一个数组,则输出将显示单个数组中的所有值,而不是单个数组。。我的意思是像这样的“first_name”:[“Th1mas”,“Thomas”]而不是first_name:“Th1mas”,在第一个数组中,firstname:“Thomas”在第二个数组中。我需要为规范添加什么吗更清楚一点,它像这样{“person”:{“first_name”:[“Th1mas”,“Th1mas”}}而不是{“person”:{“first_name”:“Th1mas”},perspn:{”名字“:“Th1mas”}”