在输入中,我有一个人员列表.每个人在合同上都有几个地址和角色. 示例:
- 人员#001具有:
- 二次住所和纳税地址;
- 共同认购人和被保险人两个角色
- 人员#002具有:
- 两个地址(I)主要住所和纳税地址;
- 三个角色:共同认购人、参保人和保费缴费人.
{
"personnes": [
{
"refExternePersonne": "BGHT34271",
"isPersonnePhysique": true,
"rolesContrat": [
"CO_SOUSCRIPTEUR",
"ASSURE"
],
"adresses": [
{
"typeAdresse": "RESIDENCE_SECONDAIRE"
},
{
"typeAdresse": "FISCALE"
}
]
},
{
"refExternePersonne": "BGHT34272",
"isPersonnePhysique": false,
"rolesContrat": [
"SOUSCRIPTEUR",
"PAYEUR_PRIMES",
"ASSURE"
],
"adresses": [
{
"typeAdresse": "FISCALE"
},
{
"typeAdresse": "CORRESPONDANCE"
}
]
}
]
}
为什么我的规格不正确?
[
{
"operation": "shift",
"spec": {
"personnes": {
"*": {
"refExternePersonne": "parties[&1].partyRef",
"rolesContrat": {
"*": {
"SOUSCRIPTEUR": {
"@(3,isPersonnePhysique)": {
"true": {
"#%phys%": "tickets.processId"
},
"false": {
"#%morale%": "tickets.processId"
}
},
"@(3,refExternePersonne)": "policies.subscribers[].partyRef",
"@(3,idPersonne)": "policies.subscribers[].partyId",
"@(3,adresses)": "policies.subscribers[].addressesTemp"
},
"CO_SOUSCRIPTEUR": {
"@(3,refExternePersonne)": "policies.cosubscribers[].partyRef",
"@(3,idPersonne)": "policies.cosubscribers[].partyId",
"@(3,adresses)": "policies.cosubscribers[].addressesTemp"
},
"ASSURE": {
"@(3,refExternePersonne)": "policies.insured[].partyRef",
"@(3,idPersonne)": "policies.insured[].partyId",
"@(3,adresses)": "policies.insured[].addressesTemp"
}
}
}
}
}
}
}
]
我试着根据人们在合同中的角色,用他们的地址来分组:
- 具有订阅者角色的人员在策略中分组.订阅者[]
- 保险角色=>;策略.保险[]
- 角色共同订阅者=>;策略.共同订阅者[]
预期输出:
{
"parties": [
{
"partyRef": "BGHT34271"
},
{
"partyRef": "BGHT34272"
}
],
"policies": {
"cosubscribers": [
{
"partyRef": "BGHT34271",
"addressesTemp": [
{
"typeAdresse": "RESIDENCE_SECONDAIRE"
},
{
"typeAdresse": "FISCALE"
}
]
}
],
"insured": [
{
"partyRef": "BGHT34271",
"addressesTemp": [
{
"typeAdresse": "RESIDENCE_SECONDAIRE"
},
{
"typeAdresse": "FISCALE"
}
]
},
{
"partyRef": "BGHT34272",
"addressesTemp": [
{
"typeAdresse": "FISCALE"
},
{
"typeAdresse": "CORRESPONDANCE"
}
]
}
],
"subscribers": [
{
"partyRef": "BGHT34272",
"addressesTemp": [
{
"typeAdresse": "FISCALE"
},
{
"typeAdresse": "CORRESPONDANCE"
}
]
}
]
},
"tickets": {
"processId": "%morale%"
}
}