<?php

class Comercializacao_MunicipioController extends Agro_Controller_Comercializacao {

	public function init() {
		$this->view->title = 'Produto » Comercializações » Município';
		$this->tipo = 'M';
		$comercializacao = new Zend_Session_Namespace('comercializacao');
		$comercializacao->tipo = 'municipio';

	}
	
	public function getForm() {
		$Form = new Comercializacao_Form_Comercializacao();
		$Form->populate($this->getRequest()->getParams());
		return $Form;
	}

	public function listAction(){
		if ($this->getRequest()->getParam('menu') != 1) {
			$this->view->showMessage(MSG_SUCCESS, 'success');
		}
		
		parent::listAction();
	}
	
	public function setcomercializacaoAction(){
		$Comercializacoes = new Comercializacao_Model_Comercializacoes();
		$Row = $Comercializacoes->find($this->getRequest()->getParam('id'))->current();
		
		$comercializacao = new Zend_Session_Namespace('comercializacao');
		$comercializacao->produto = $Row->id_produto;
		$comercializacao->id = $Row->id;
		
		$this->_redirect('/comercializacao/relacionarmunicipio');
	}
	
	public function listamunicipiosAction(){
		$this->getHelper('layout')->disableLayout();
		
		$comercializacao = new Zend_Session_Namespace('comercializacao');
		
		$ModelComercializacao = new Comercializacao_Model_Comercializacoes();
		$ModelComercializacaoMunicipios = new Comercializacao_Model_ComercializacoesMunicipios();
		
		$this->view->rel = $ModelComercializacao->getMunicipios($comercializacao->id);
		
		$chave = $this->getRequest()->getParam('chave');
		
		$this->view->municipios = $ModelComercializacaoMunicipios->getMuniciposPorEstado($chave, $comercializacao->id, $comercializacao->produto);
		
		return true;
	}
	
	public function getFilter() {
		$where = array();
		$where[] = array(
			'field' => 'tp_comercializacao',
			'operator' => '=',
			'value' => $this->tipo
		);
		
		if($this->getRequest()->getParam('ds_nome_comercializacao')) {
			$where[] = array(
				'field' => 'ds_nome_comercializacao',
				'operator' => 'ilike',
				'value' => '%'.$this->getRequest()->getParam('ds_nome_comercializacao').'%'
			);
		}
		
		if($this->getRequest()->getParam('id_safra')){
			$where[] = array(
				'field' => 'id_safra',
				'operator' => '=',
				'value' => $this->getRequest()->getParam('id_safra')
			);
		}
		
		if($this->getRequest()->getParam('id_produto')){
			$where[] = array(
				'field' => 'id_produto',
				'operator' => '=',
				'value' => $this->getRequest()->getParam('id_produto')
			);
		}
		
		if ($this->getRequest()->getParam('id_estado') && !$this->getRequest()->getParam('id_municipio')) {
			$where[] = array(
				'field' => 'm.id_estado',
				'operator' => '=',
				'value' => $this->getRequest()->getParam('id_estado')
			);
		}
		
		if ($this->getRequest()->getParam('id_estado') && $this->getRequest()->getParam('id_municipio')) {
			$where[] = array(
				'field' => 'id_municipio',
				'operator' => '=',
				'value' => $this->getRequest()->getParam('id_municipio')
			);
		}
		
		if ($this->getRequest()->getParam('fl_ativo')) {
			$where[] = array(
				'field' => 'c.fl_ativo',
				'operator' => '=',
				'value' => $this->getRequest()->getParam('fl_ativo')
			);
		}
		
		return $where;
	}
	
	public function getRow() {
		$params = explode(',', $this->getRequest()->getParam('id'));
		$Model = $this->getModel();
	
		$Row = $Model->find($params[0])->current()->toArray();
		
		$Produto = new Produto_Model_Produtos();
		
		$arr = $Produto->find($Row['id_produto'])->current()->toArray();
		$this->view->produto = $arr['ds_nome_produto'];
		
		$Safra = new Produto_Model_Safras();
		
		$arrSafras = $Safra->find($arr['id_safra'])->current()->toArray();
		
		$this->view->safra = $arrSafras['ds_nome_safra'];
		$this->view->idSafra = $arrSafras['id'];

		return $Row;
	}
	
	
	public function geraxlsAction() {
		$this->getHelper('ViewRenderer')->setNoRender();
		$this->getHelper('layout')->disableLayout();
		$dados = $this->getRequest()->getParams();
		$Model = new Comercializacao_Model_Comercializacoes();
		
		$ret = $Model->getComercializacoesMunicipiosXls($dados);
		require_once(APPLICATION_PATH . "/../library/Agro/xls/PhpSimpleXlsGen.php");
		
		$myxls = new PhpSimpleXlsGen();
		$myxls->totalcol = 7;
		//produto | DATA INICIO VEN | DATA FIM VEND | DADTA INICIO COB | DATA FIM COB |  ESTADO
		$myxls->InsertText('Produto');
		$myxls->InsertText('Inicio Vendas');
		$myxls->InsertText('Fim Vendas');
		$myxls->InsertText('Inicio Cobertura');
		$myxls->InsertText('Fim Cobertura');
		$myxls->InsertText('Estado');
		$myxls->InsertText('Municipio');
		foreach($ret as $linha) {

			$myxls->InsertText( utf8_decode($linha['ds_nome_produto']) . ' ');
			$myxls->InsertText( Agro_Util::formatDate($linha['dt_comercializacao_inicio'], Zend_Date::DATES) . ' ' );
			$myxls->InsertText( Agro_Util::formatDate($linha['dt_comercializacao_fim'], Zend_Date::DATES) . ' ' );
			$myxls->InsertText( Agro_Util::formatDate($linha['dt_cobertura_inicio'], Zend_Date::DATES) . ' ' );
			$myxls->InsertText( Agro_Util::formatDate($linha['dt_cobertura_fim'], Zend_Date::DATES) . ' ' );
			$myxls->InsertText( utf8_decode($linha['ds_sigla']) . ' ' );
			$myxls->InsertText( utf8_decode($linha['ds_nome_municipio']) . ' ' );
		}
		
		$myxls->SendFile();
	}
}