I have an JSON like this:
{
"invoice-line": [
{
"id": "01",
"date": "2019-06-21",
"sales-date": "2019-06-21",
"line-num": "1",
"item": "Mouse",
"descrption": "This is line 1 item"
},
{
"id": "02",
"date": "2019-06-21",
"sales-date": "2019-06-21",
"line-num": "2",
"item": "Keyboard",
"descrption": "This is line 2 item"
},
{
"id": "03",
"date": "2019-06-21",
"sales-date": "2019-06-21",
"line-num": "3",
"item": "Monitor",
"descrption": "This is line 3 item"
}
]
}
From this input JSON we need to extract the data and map into another output JSON but with a logic:
when line-num = 1 then map id, date, sales-date, description
then rest or the array will map id, item, descrption
Which will look like below:
{
"row": [
{
"id": "01",
"date": "2019-06-21",
"sales-date": "2019-06-21",
"line-num": "1",
"item": "",
"descrption": "This is line 1 item"
},
{
"id": "02",
"date": "",
"sales-date": "",
"line-num": "",
"item": "Mouse",
"descrption": "This is line 2 item"
},
{
"id": "03",
"date": "",
"sales-date": "",
"line-num": "",
"item": "Monitor",
"descrption": "This is line 3 item"
}
]
}
Also is that possible to perform something like mapping array item (first index) to different output array? For example:
{
"row": [
{
"id": "",
"date": "2019-06-21",
"sales-date": "2019-06-21",
"line-num": "1",
"item": "",
"descrption": ""
},
{
"id": "01",
"date": "",
"sales-date": "",
"line-num": "",
"item": "Keyboard",
"descrption": "This is line 1 item"
},
{
"id": "02",
"date": "",
"sales-date": "",
"line-num": "",
"item": "Mouse",
"descrption": "This is line 2 item"
},
{
"id": "03",
"date": "",
"sales-date": "",
"line-num": "",
"item": "Monitor",
"descrption": "This is line 3 item"
}
]
}