0

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)

1 Answer 1

2

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

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.