<?php
/**
 * 
 * @author Tonismar Bernardo
 * @date 19/08/2020
 *
 */
class Agro_Controller_LaudoPreliminar extends Agro_Controller_LaudoPreliminarRegulacao {}


class Regulacao_Lp004Controller extends Agro_Controller_LaudoPreliminar {

    public function getModel() {
        return new Regulacao_Model_Lp004();
    }
    
    public function getModelItensSegurados() {
        return new Regulacao_Model_Lp004ItensSegurados();
    }
    
    public function getForm($dados = array()) {
    	$dados["fl_exibir_botao_imprimir"] = false;
        return new Regulacao_Form_Lp004(array('dados'=>$dados));
    }

    public function formAction() { 
        $params = $this->getRequest()->getParams();
        $sumArea = $sumAreaSinistrada = 0;

        foreach($params['itens_segurados'] as $idItemSegurado) {
            $ModelItemSegurados = new Seguro_Model_ItensSegurados();
            $Item = $ModelItemSegurados->getRow($idItemSegurado)->toArray();

            $sumArea += $Item['vl_area'];

            if ($params['fl_quadra_sinistrada'][$idItemSegurado] == true && $params['fl_periodo_cob_qualidade'][$idItemSegurado] == true) {
                $sumAreaSinistrada += $Item['vl_area'];
            }
        }

        if (($sumAreaSinistrada/$sumArea) * 100 >= 30) {
            $this->getRequest()->setParam('fl_incidencia_atingida', 1);
        } else {
            $this->getRequest()->setParam('fl_incidencia_atingida', 0);
        }
        
        parent::formAction();
    }
    
    public function isValidItensSeguradosEspecializacao(array $dados, array $post) {
        
        $flErro = false;
        $result = array();
        $result['status'] = true;
        $result['msg'] = array();
        
        if (count($post['itens_segurados']) > 0) {        	
        	
            foreach ($post['itens_segurados'] as $idItemSegurado) {
            	
            	//retorna true a validação do item não sinistrado
            	if($post['fl_quadra_sinistrada'][$idItemSegurado] == false){
            		continue;
            	}else            	
            	
                if (
                    ($post['id_intensidade'][$idItemSegurado] == '' ||
                    $post['id_estadio_fenologico'][$idItemSegurado] == '' ||
                    $post['fl_periodo_cob_qualidade'][$idItemSegurado] == '') &&
                    $post['fl_quadra_sinistrada'][$idItemSegurado] == 1
                ) {
                    $result['msg'][] = 'Preencha todos os campos relativos aos itens segurados corretamente.';
                    $result['status'] = false;
                    break;
                }
            }
        } else {
            $result['msg'][] = 'Confirme os itens selecionados e preencha as informações corretamente.';
            $result['status'] = false;
        }	        
                 
        return $result;
    }  

    public function validapostAction(){
    	 
    	parent::validapostAction();
    
    }
}