My current Data structure is show below which is grouped based on a property called 'submitId'
{
bc3827d9c21548f8b1ae072ceab4ce6d: [
{...}
],
5ee08c723e1d40b0af716ea3e18c6114: [
{...}
],
886b149dfe1241efac863d0532b7d847: [
{...}
]
}
Actual data based on a single submitId is shown below
// ACTUAL DATA
{
bc3827d9c21548f8b1ae072ceab4ce6d: [
{
status: 'FINISHED',
start: '2022-05-26 05:01:00.0',
end: '2022-05-28 05:01:00.0',
submissionRank: 112,
submitId: 'bc3827d9c21548f8b1ae072ceab4ce6d',
code: 'ATL',
indicator: 0,
addBy: 30,
delayBy: 0,
pstat: 'DATA GATHERED',
fstat: 'FINISHED',
},
{
status: 'FINISHED',
start: '2022-05-26 05:01:00.0',
end: '2022-05-28 05:01:00.0',
submissionRank: 112,
submitId: 'bc3827d9c21548f8b1ae072ceab4ce6d',
code: 'AAA',
indicator: 0,
addBy: 30,
delayBy: 0,
pstat: 'DATA GATHERED',
fstat: 'FINISHED',
},
{
status: 'FINISHED',
start: '2022-05-26 05:01:00.0',
end: '2022-05-28 05:01:00.0',
submissionRank: 112,
submitId: 'bc3827d9c21548f8b1ae072ceab4ce6d',
code: 'AAA',
indicator: 1,
addBy: 30,
delayBy: 0,
pstat: 'DATA GATHERED',
fstat: 'FINISHED',
},
{
status: 'FINISHED',
start: '2022-05-26 05:01:00.0',
end: '2022-05-28 05:01:00.0',
submissionRank: 112,
submitId: 'bc3827d9c21548f8b1ae072ceab4ce6d',
code: 'ATL',
indicator: 1,
addBy: 30,
delayBy: 0,
pstat: 'DATA GATHERED',
fstat: 'FINISHED',
},
]
}
for a given 'submitId', the unique object is made up of unique combination of 'code', indicator is set as 1 if all objects have 1 and 0 for same reason BUT set to 'both' if a mix of 0 and 1. The uniques object needs to look like below:
{
status: 'FINISHED',
start: '2022-05-26 05:01:00.0',
end: '2022-05-28 05:01:00.0',
submissionRank: 112,
submitId: 'bc3827d9c21548f8b1ae072ceab4ce6d',
code: 'ATL, AAA', <--- unique codes
indicator: 'both', <--- if indicator is even mix of 0 and 1 then 'both'
addBy: 30,
delayBy: 0,
pstat: 'DATA GATHERED',
fstat: 'FINISHED',
},
please help!