<?php
namespace Incoviba\Service\Contabilidad\Informe\Tesoreria\Output\Data;

use Incoviba\Model;

class Sociedad
{
    public Model\Inmobiliaria $sociedad;
    public array $cuentas = [];
    public function total(): int
    {
        return array_reduce($this->cuentas, function(int $sum, $cuenta) {
            return $sum + $cuenta->actual;
        }, 0);
    }
    public function ffmm(): int
    {
        return array_reduce($this->cuentas, function(int $sum, $cuenta) {
            return $sum + $cuenta->ffmm;
        }, 0);
    }
    public function deposito(): int
    {
        return array_reduce($this->cuentas, function(int $sum, $cuenta) {
            return $sum + $cuenta->deposito;
        }, 0);
    }
    public function caja(): int
    {
        return array_reduce($this->cuentas, function(int $sum, $cuenta) {
            return $sum + $cuenta->saldo();
        }, 0);
    }
}
