Reputation: 6417
I have been hacking at this for a while and it is turning into a big hack job that doesn't work. I am recreating a object of a 5 properties and a nested array of objects. right now it does not work. the plunker i made has 2 objects that i am working with. it is only showing one in the result, along with the 5 properties are not showing. on the index page you will see the json that is what i am starting with. i need the end result to include the original array plus the chartBldArry,chartInvArry,chartLoeArry and chartLotsArry arrays in each subdivision object plunker
var surveyTerritoryArry = [];
for (var i = 0; i < territory.subdivisions.length; i++) {
for (var i = 0; i < territory.subdivisions.length; i++) {
for (var i = 0; i < territory.subdivisions.length; i++) {
for (var i = 0; i < territory.subdivisions.length; i++) {
var territory = {
subdivisions : {
metrics: {
bld: {
count: {
custom: territory.subdivisions[i].metrics.bld.count.custom,
prod: territory.subdivisions[i].metrics.bld.count.prod
},
type: territory.subdivisions[i].metrics.bld.type
},
inv: {
fin: territory.subdivisions[i].metrics.inv.fin,
fut: territory.subdivisions[i].metrics.inv.fut,
mod: territory.subdivisions[i].metrics.inv.mod,
total: territory.subdivisions[i].metrics.inv.total,
uc: territory.subdivisions[i].metrics.inv.uc,
vdl: territory.subdivisions[i].metrics.inv.vdl,
},
loe: {
activity: territory.subdivisions[i].metrics.loe.activity,
bld: territory.subdivisions[i].metrics.loe.bld,
inv: territory.subdivisions[i].metrics.loe.inv,
size: territory.subdivisions[i].metrics.loe.size,
total: territory.subdivisions[i].metrics.loe.total,
},
lots: {
total: territory.subdivisions[i].metrics.lots.total,
total_active: territory.subdivisions[i].metrics.lots.total_active,
},
},
properties: {
id: territory.subdivisions[i].properties.id,
name: territory.subdivisions[i].properties.name,
show: territory.subdivisions[i].properties.show,
status: territory.subdivisions[i].properties.status,
territoryId: territory.subdivisions[i].properties.territoryId
},
type: territory.subdivisions[i].type,
chartBldArry: MapSidebarChartService.charBldDoughnut(territory.subdivisions[i]),
chartInvArry: MapSidebarChartService.charInvtDoughnut(territory.subdivisions[i]),
chartLoeArry: MapSidebarChartService.charLoeDoughnut(territory.subdivisions[i]),
chartLotsArry: MapSidebarChartService.charLotsDoughnut(territory.subdivisions[i])
}
};
surveyTerritoryArry.push(territory);
}
}
}
}
for (var i = 0; i < territory.length; i++) {
var territory = {
inv: territory[i].inv,
loe: territory[i].loe,
lots: territory[i].lots,
name: territory[i].name,
sbd: territory[i].sbd,
};
surveyTerritoryArry.push(territory);
};
console.log(surveyTerritoryArry)
Upvotes: 0
Views: 57
Reputation: 1789
If I understand your question correctly then all you need in your controller is:
for (var i = 0; i < territory.subdivisions.length; i++) {
territory.subdivisions[i].charInvtDoughnut = MapSidebarChartService.charInvtDoughnut(territory.subdivisions[i]);
territory.subdivisions[i].charLoeDoughnut = MapSidebarChartService.charLoeDoughnut(territory.subdivisions[i]);
territory.subdivisions[i].charBldDoughnut = MapSidebarChartService.charBldDoughnut(territory.subdivisions[i]);
territory.subdivisions[i].charLotsDoughnut = MapSidebarChartService.charLotsDoughnut(territory.subdivisions[i]);
}
Here's a plunker
Upvotes: 2