set of different items grouped

by David Santiago

JavaScript

const input = 
{
    "Items": [
        {
            "date": {
                "S": "2023-03-29T22:04:37.001Z"
            },
            "typeId": {
                "S": "1111111"
            }
        },
        {
            "date": {
                "S": "2023-03-28T22:04:37.001Z"
            },
            "typeId": {
                "S": "1111111"
            }
        },
        {
            "date": {
                "S": "2023-03-27T22:04:37.001Z"
            },
            "typeId": {
                "S": "1111111"
            }
        },
        {
            "date": {
                "S": "2023-03-29T22:11:52.002Z"
            },
            "typeId": {
                "S": "222222"
            },
        },
        {
            "date": {
                "S": "2023-03-29T23:12:52.002Z"
            },
            "typeId": {
                "S": "222222"
            },
        },
        {
            "date": {
                "S": "2023-03-30T23:12:52.002Z"
            },
            "typeId": {
                "S": "222222"
            },
        }
        ]
};
const items = input.Items;
let result = {};

for (var key of Object.keys(items)) {
	const keyIndex = items[key].typeId.S;
	const date = items[key].date.S.substring(0, 10);
	if(typeof result[keyIndex] !== "object"){
		result[keyIndex] = new Set();
	}
  result[keyIndex].add(date);
};

let obfuscatedResult = {};
let counter = 0;

console.log("PATIENT_ID,SCHEDULED_DATES");
for(var key in result){
	console.log("patient"+(counter++)+", "+result[key].size);
}