<?php

class BloqueoTemporal
{
    private $asociado;

    public function __construct($asociado)
    {
        $this->asociado = $asociado;
    }

    public function run()
    {
        return Yii::app()->getDb()->createCommand('
            SELECT coalesce(sum(t.monto), 0) as monto
            FROM (
                SELECT rp.monto_solicitado as monto
                FROM retiro.retiro_parcial rp
                INNER JOIN retiro.estatus_retiro_parcial erp on erp.id_retiro_parcial=rp.id
                    AND erp.actual is true
                    AND erp.id_estatus_retiro=1
                WHERE rp.idasociado=:id
                UNION
                SELECT monto_credito
                FROM prestamos.credito c
                INNER JOIN prestamos.credito_seguimiento cs on cs.id_credito=c.id
                    AND cs.actual is true
                    AND cs.id_estatus_credito in (1,2,6,8)
                WHERE c.idasociado=:id
                    AND c.blnborrado is false
            ) as t
        ')->bindValues([
            'id' => $this->asociado,
        ])->queryRow()['monto'];
    }
}
