<?php

namespace app\models;

use Yii;

use dektrium\user\models\User as Usuario;
use app\models\PeseEditalTemProduto;

/**
 * This is the model class for table "pese_edital_tomada_preco".
 *
 * @property integer $id
 * @property string $descricao
 * @property string $validade
 * @property string $observacao
 * @property string $data_cadastro
 * @property integer $pese_empresa_edital_preco_id
 * @property integer $usuario_id
 * @property integer $status
 *
 * @property PeseEditalTemProduto[] $editalTemProdutos
 * @property PeseEmpresaEditalPreco $empresaEditalPreco
 * @property Usuario $usuario
 */
class PeseEditalTomadaPreco extends \app\models\Base
{

    const INATIVO = 0;
    const ATIVO = 1;
    const EXCLUIDO = 2;
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'pese_edital_tomada_preco';
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['descricao', 'data_cadastro', 'pese_empresa_edital_preco_id', 'usuario_id','status'], 'required'],
            [['validade', 'data_cadastro'], 'safe'],
            [['observacao'], 'string'],
            [['pese_empresa_edital_preco_id', 'usuario_id','status'], 'integer'],
            [['descricao'], 'string', 'max' => 255],
            [['pese_empresa_edital_preco_id'], 'exist', 'skipOnError' => true, 'targetClass' => PeseEmpresaEditalPreco::className(), 'targetAttribute' => ['pese_empresa_edital_preco_id' => 'id']],
            [['usuario_id'], 'exist', 'skipOnError' => true, 'targetClass' => Usuario::className(), 'targetAttribute' => ['usuario_id' => 'id']],
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'descricao' => 'Descrição',
            'validade' => 'Validade',
            'observacao' => 'Observação',
            'data_cadastro' => 'Data do Cadastro',
            'pese_empresa_edital_preco_id' => 'Empresa',
            'usuario_id' => 'Cadastrado por',
            'status' => 'Status',
        ];
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getPeseEditalTemProdutos()
    {
        return $this->hasMany(PeseEditalTemProduto::className(), ['pese_edital_id' => 'id']);
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getPeseEmpresaEditalPreco()
    {
        return $this->hasOne(PeseEmpresaEditalPreco::className(), ['id' => 'pese_empresa_edital_preco_id']);
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getUsuario()
    {
        return $this->hasOne(Usuario::className(), ['id' => 'usuario_id']);
    }


    public function getCotacaoProduto(){

        $retorno  = "<table class='table table-bordered table-striped table-condensed'>";
        $retorno .= "<tr><th>Produto</th><th>Preço</th></tr>";

        $produtos = $this->peseEditalTemProdutos;

        foreach ($produtos as $produto) {
            $retorno .= "<tr>";
            $retorno .= "<td>".$produto->peseProduto->nome."</td>";
            $retorno .= "<td style='text-align:right'>".Yii::$app->formatter->asCurrency($produto->valor)."</td>";
            $retorno .= "</tr>";            
        }        

        $retorno .= "</table>";

        return $retorno;

    }

     public function getEmpresaDescricao(){
	return $this->peseEmpresaEditalPreco->nome . ' - ' . $this->descricao;
    }	
}
