<?php

class Sinistro2_Model_ValorLitroCombustivel extends Agro_Db_Table_Abstract
{
    protected $_name = 'cobranca_valor_combustivel';
    protected $_schema = 'sinistro';
    public $_order = '';

    public function getData($where = false)
    {
        $select = $this->select()->setIntegrityCheck(false);
        $select->from(['cvc' => "{$this->_schema}.{$this->_name}"], '*');
        $select->join(['e' => 'sistema.estados'], 'e.id = cvc.id_estado', 'ds_nome_estado');

        if (!empty($this->_order)) {
            $select->order($this->_order);
            $select->order('e.ds_nome_estado');
        } else {
            $select->order(['e.ds_nome_estado', 'cvc.data_inicio desc']);
        }

        $this->getWhere($select, $where);

        return $select;
    }

    public function save(array $dados)
    {
        $row = !empty($dados['id']) ? $this->getRow($dados['id']) : $this->createRow();

        $row->valor = str_replace(',', '.', $dados['valor']) ?? $row->valor;
        $row->id_estado = $dados['id_estado'] ?? $row->id_estado;
        $row->data_inicio = Agro_Util::formatDate($dados['data_inicio'], Zend_Date::W3C) ?? $row->data_inicio;
        $row->save();

        return $row;
    }
}
