var data = [
{
_id: '6d2847090a6a1b',
user_id: '580da5653bd3cc5802f6c37c',
name: 'aaaa',
sum: 250
},
{
_id: '75f36d2847090a6a36580871',
user_id: '3bd3cc5802f6c37c580da565',
name: 'bbbb',
sum :30
},
{
_id: '6a3087184367090a6a3e58fd284',
user_id: '2f63bc580c37c580da565d3c',
name: 'ccc',
sum :100
}
];
var giftedObject = [];
data.forEach(function(userSummary){
userSummary.numberOfGifted = Math.floor(userSummary.sum / 100);
for(var i = 0; i < userSummary.numberOfGifted; i++){
giftedObject.push({
user_id: userSummary.user_id,
name: userSummary.name,
gifted_point: 1,
active: true
});
}
});
var result = {giftedObject: giftedObject};
console.log(result);
Above is my code .here when ever user reached 100 points giftedObjectobject will create.
if user reached 100 point that time one object will create
if user reached 200 point that time two object will create
after creating object we need to reduce the gifted values from data
expected result :
gifted object result:
{
active:true
user_id: '580da5653bd3cc5802f6c37c',
gifted_point: 1
name: 'aaaa',
},
{
active:true
user_id: '580da5653bd3cc5802f6c37c',
gifted_point: 1
name: 'aaaa',
},
{
active:true
user_id: '2f63bc580c37c580da565d3c',
gifted_point: 1
name: 'ccc',
}
final data result
{
_id: '6d2847090a6a1b',
user_id: '580da5653bd3cc5802f6c37c',
name: 'aaaa',
sum: 248
},
{
_id: '75f36d2847090a6a36580871',
user_id: '3bd3cc5802f6c37c580da565',
name: 'bbbb',
sum :30
},
{
_id: '6a3087184367090a6a3e58fd284',
user_id: '2f63bc580c37c580da565d3c',
name: 'ccc',
sum :99
}
everything working fine but after creating object we need to reduce (minus) in sum value