Sum values in relation 3 layers in CakePHP

So, I have a EAV models in my database, Entity, Attribute, Value. The relations between are:

Production hasMany Entity -> Entity belongsTo Production
Entity hasMany Attribute -> Attribute belongsTo Entity
Attribute hasMany Value -> Value belongsTo Attribute
The table values —value (INT 3) , —label (VARCHAR 65), —id (INT 11 AI)

I Can save the relations in my database, but, my application needs to return the SUM of Value.value a specific production, example:

The final user, need the consolidate of as Production by month of created. So, now, my application return is this:

(int) 0 => array(
        'Production' => array(
            'myconditions' => 'HereIsNotAProblem'
        ),
        'Entity' => array(
            (int) 0 => array(
                'id' => '11',
                'label' => 'Acompanhamento Familiar',
                'production_id' => '8',
                    'Attribute' => array(
                        (int) 0 => array(
                            'id' => '33',
                            'label' => 'Nascidos vivos no m?s',
                            'entity_id' => '11',
                            'Value' => array(
                                (int) 0 => array(
                                    'id' => '1',
                                    'label' => '< 2500g',
                                    'value' => '0',
                                    'attribute_id' => '33'
                                    ),              
                            )
                    )
            )
)

I need to return someone like:

(int) 0 => array(
        'Production' => array(
            'myconditions' => 'HereIsNotAProblem'
        ),
        'Entity' => array(
            (int) 0 => array(
                'id' => '11',
                'label' => 'Acompanhamento Familiar',
                'production_id' => '8',
                    'Attribute' => array(
                        (int) 0 => array(
                            'id' => '33',
                            'label' => 'Nascidos vivos no m?s',
                            'entity_id' => '11',
                            'Value' => array(
                                (int) 0 => array(
                                    'id' => '1',
                                    'label' => '< 2500g',
                                    'SUM' => 'TOTAL_SUM',
                                    'attribute_id' => '33'
                                    ),              
                            )
                    )
            )
)

How I do this?

Best rewards, Acioli;

Hi,

You can use the condition of collections. try it.