<?php
/**
 * Model
 * 
 * Laudo final Tipo LF015 - Amostras / Safra17 - Cítricos / Granizo
 * 
 * @author Samir Ortiz	
 * @date 27/02/2012
 *
 */
class Regulacao_Model_Lf015ItensSeguradosAmostras extends Agro_Db_Table_Abstract {
	protected $_rowClass = 'Regulacao_Model_Row_Lf015ItemSeguradoAmostras';
	protected $_schema 	= 'regulacao';
	protected $_name 	= 'lf015_itens_segurados_amostras';
	protected $_primary = 'id';
	public 	  $_order 	= 'nr_amostra';
		
	public function save($dados) {
		
		$ModelIS = new Regulacao_Model_Lf015ItensSegurados();
		
		$dados = $this->prepararDados($dados);
		
		if ($this->validar($dados)){
			
			$dados = $this->calcular($dados);
			
			$dados["id_laudo_final_item_segurado"] = $ModelIS->save($dados);
			
			if ($dados["id_laudo_final_item_segurado"]){
				try {
					$this->delete($dados["id_laudo_final_item_segurado"], "id_laudo_final_item_segurado");
					
					for ($i = 1; $i < 12; $i++) {
						$amostra = $dados["amostras"][$i];
						$amostra["nr_amostra"] = $i;
						$amostra["id_laudo_final_item_segurado"] = $dados["id_laudo_final_item_segurado"];
						$this->insert($amostra);
					}
					
					$this->setMessage("Laudo salvo com sucesso.");
					
					return $dados["id_laudo_final_item_segurado"];
					
				} catch (Exception $e) {
					$this->setMessage($e->getMessage());
					return false;
				}
			} else {
				$this->setMessage($ModelIS->getMessages());
				return false;
			}
		} else {
			return false;
		}
	}
	
	public function validar($dados){
		$messages = array();
		
		$translate = array(
			"cat1_cat1" 		=> 	"Cat 1 / Cat1",
			"cat1_cat2" 		=> 	"Cat 1 / Cat2",
			"cat1_cat3" 		=> 	"Cat 1 / Cat3",
			"cat1_cat4" 		=> 	"Cat 1 / Cat4",
			"cat1_descarte" 	=>	"Cat 1 / Descarte",
			"cat2_cat2" 		=> 	"Cat 2 / Cat2",
			"cat2_cat3" 		=> 	"Cat 2 / Cat3",
			"cat2_cat4" 		=> 	"Cat 2 / Cat4",		
			"cat2_descarte" 	=> 	"Cat 2 / Descarte",
			"cat3_cat3" 		=> 	"Cat 3 / Cat3",
			"cat3_cat4" 		=> 	"Cat 3 / Cat4",		
			"cat3_descarte" 	=> 	"Cat 3 / Descarte",
			"cat4_cat4" 		=> 	"Cat 4 / Cat4",		
			"cat4_descarte" 	=> 	"Cat 4 / Descarte",				
			"descarte_descarte" =>	"Descarte"
		);
		
		for ($i = 1; $i < 12; $i++) {
			$dados["amostras"][$i]["total"] = 0.0;
			
			foreach ($dados["amostras"][$i] as $key => $value){
				
				if ($key != "total" && !$value){
					$messages[] = "{$translate[$key]}, amostra $i";
				}
			}
		}
		
		if (count($messages)){
			$this->setMessage("Os itens citados abaixo são de preenchimento obrigatório:<ul><li>".implode("</li><li>", $messages)."</li></ul>");
			return false;
			
		} else {
			return true;
		}
	}
	
	public function calcular($dados){
		$dados["total_cat1_cat1"] 					= 0.0;
		$dados["total_cat1_cat1_depre"] 			= 0.0;
		$dados["total_cat1_cat2"] 					= 0.0;
		$dados["total_cat1_cat2_depre"] 			= 0.0;
		$dados["total_cat1_cat3"] 					= 0.0;
		$dados["total_cat1_cat3_depre"] 			= 0.0;
		$dados["total_cat1_cat4"] 					= 0.0;
		$dados["total_cat1_cat4_depre"] 			= 0.0;				
		$dados["total_cat1_descarte"] 				= 0.0;
		$dados["total_cat1_descarte_depre"] 		= 0.0;
		
		$dados["total_cat2_cat2"] 					= 0.0;
		$dados["total_cat2_cat2_depre"] 			= 0.0;
		$dados["total_cat2_cat3"] 					= 0.0;
		$dados["total_cat2_cat3_depre"] 			= 0.0;
		$dados["total_cat2_cat4"] 					= 0.0;
		$dados["total_cat2_cat4_depre"] 			= 0.0;		
		$dados["total_cat2_descarte"] 				= 0.0;
		$dados["total_cat2_descarte_depre"] 		= 0.0;
		
		$dados["total_cat3_cat3"] 					= 0.0;
		$dados["total_cat3_cat3_depre"] 			= 0.0;
		$dados["total_cat3_cat4"] 					= 0.0;
		$dados["total_cat3_cat4_depre"] 			= 0.0;		
		$dados["total_cat3_descarte"] 				= 0.0;
		$dados["total_cat3_descarte_depre"] 		= 0.0;
		
		$dados["total_cat4_cat4"] 					= 0.0;
		$dados["total_cat4_cat4_depre"] 			= 0.0;		
		$dados["total_cat4_descarte"] 				= 0.0;
		$dados["total_cat4_descarte_depre"] 		= 0.0;				
		
		$dados["total_descarte_descarte"] 			= 0.0;
		$dados["total_descarte_descarte_depre"]		= 0.0;
		$dados["total"]								= 0.0;
		$dados["total_depre"]						= 0.0;
		
		
		/**
		 * Calcula total por amostra
		 */
		for ($i = 1; $i < 12; $i++) {
			$dados["amostras"][$i]["total"] = 0.0;
			
			foreach ($dados["amostras"][$i] as $key => $value){
				if ($key != "total" && $value > 0){
					$dados["amostras"][$i]["total"]+=$value;
				}
			}
			
			$dados["total_cat1_cat1"]				+=$dados["amostras"][$i]["cat1_cat1"];
			$dados["total_cat1_cat1_depre"]			+=$dados["amostras"][$i]["cat1_cat1"] * $dados["cat1_cat1_depre"];
			$dados["total_cat1_cat2"]				+=$dados["amostras"][$i]["cat1_cat2"];
			$dados["total_cat1_cat2_depre"]			+=$dados["amostras"][$i]["cat1_cat2"] * $dados["cat1_cat2_depre"];

			$dados["total_cat1_cat3"]				+=$dados["amostras"][$i]["cat1_cat3"];
			$dados["total_cat1_cat3_depre"]			+=$dados["amostras"][$i]["cat1_cat3"] * $dados["cat1_cat3_depre"];
			$dados["total_cat1_cat4"]				+=$dados["amostras"][$i]["cat1_cat4"];
			$dados["total_cat1_cat4_depre"]			+=$dados["amostras"][$i]["cat1_cat4"] * $dados["cat1_cat4_depre"];
			$dados["total_cat1_descarte"]			+=$dados["amostras"][$i]["cat1_descarte"];
			$dados["total_cat1_descarte_depre"]		+=$dados["amostras"][$i]["cat1_descarte"] * $dados["cat1_descarte_depre"];
			
			$dados["total_cat2_cat2"]				+=$dados["amostras"][$i]["cat2_cat2"];
			$dados["total_cat2_cat2_depre"]			+=$dados["amostras"][$i]["cat2_cat2"] * $dados["cat2_cat2_depre"];
			$dados["total_cat2_cat3"]				+=$dados["amostras"][$i]["cat2_cat3"];
			$dados["total_cat2_cat3_depre"]			+=$dados["amostras"][$i]["cat2_cat3"] * $dados["cat2_cat3_depre"];
			$dados["total_cat2_cat4"]				+=$dados["amostras"][$i]["cat2_cat4"];
			$dados["total_cat2_cat4_depre"]			+=$dados["amostras"][$i]["cat2_cat4"] * $dados["cat2_cat4_depre"];						
			$dados["total_cat2_descarte"]			+=$dados["amostras"][$i]["cat2_descarte"];
			$dados["total_cat2_descarte_depre"]		+=$dados["amostras"][$i]["cat2_descarte"] * $dados["cat2_descarte_depre"];
			
			$dados["total_cat3_cat3"]				+=$dados["amostras"][$i]["cat3_cat3"];
			$dados["total_cat3_cat3_depre"]			+=$dados["amostras"][$i]["cat3_cat3"] * $dados["cat3_cat3_depre"];
			$dados["total_cat3_cat4"]				+=$dados["amostras"][$i]["cat3_cat4"];
			$dados["total_cat3_cat4_depre"]			+=$dados["amostras"][$i]["cat3_cat4"] * $dados["cat3_cat4_depre"];						
			$dados["total_cat3_descarte"]			+=$dados["amostras"][$i]["cat3_descarte"];
			$dados["total_cat3_descarte_depre"]		+=$dados["amostras"][$i]["cat3_descarte"] * $dados["cat3_descarte_depre"];			
			
			$dados["total_cat4_cat4"]				+=$dados["amostras"][$i]["cat4_cat4"];
			$dados["total_cat4_cat4_depre"]			+=$dados["amostras"][$i]["cat4_cat4"] * $dados["cat4_cat4_depre"];						
			$dados["total_cat4_descarte"]			+=$dados["amostras"][$i]["cat4_descarte"];
			$dados["total_cat4_descarte_depre"]		+=$dados["amostras"][$i]["cat4_descarte"] * $dados["cat4_descarte_depre"];			
			$dados["total_descarte_descarte"]		+=$dados["amostras"][$i]["descarte_descarte"];
			$dados["total_descarte_descarte_depre"]	+=$dados["amostras"][$i]["descarte_descarte"] * $dados["descarte_descarte_depre"];
		}

		
		$dados["total_cat1_cat1"]				= Agro_Util::round($dados["total_cat1_cat1"] ,2);
		$dados["total_cat1_cat1_depre"]			= Agro_Util::round($dados["total_cat1_cat1_depre"] ,2);
		$dados["total_cat1_cat2"]				= Agro_Util::round($dados["total_cat1_cat2"] ,2);
		$dados["total_cat1_cat2_depre"]			= Agro_Util::round($dados["total_cat1_cat2_depre"] ,2);
		$dados["total_cat1_cat3"]				= Agro_Util::round($dados["total_cat1_cat3"] ,2);
		$dados["total_cat1_cat3_depre"]			= Agro_Util::round($dados["total_cat1_cat3_depre"] ,2);
		$dados["total_cat1_cat4"]				= Agro_Util::round($dados["total_cat1_cat4"] ,2);
		$dados["total_cat1_cat4_depre"]			= Agro_Util::round($dados["total_cat1_cat4_depre"] ,2);				
		$dados["total_cat1_descarte"]			= Agro_Util::round($dados["total_cat1_descarte"] ,2);
		$dados["total_cat1_descarte_depre"]		= Agro_Util::round($dados["total_cat1_descarte_depre"] ,2);
		
		$dados["total_cat2_cat2"]				= Agro_Util::round($dados["total_cat2_cat2"] ,2);
		$dados["total_cat2_cat2_depre"]			= Agro_Util::round($dados["total_cat2_cat2_depre"] ,2);
		$dados["total_cat2_cat3"]				= Agro_Util::round($dados["total_cat2_cat3"] ,2);
		$dados["total_cat2_cat3_depre"]			= Agro_Util::round($dados["total_cat2_cat3_depre"] ,2);
		$dados["total_cat2_cat4"]				= Agro_Util::round($dados["total_cat2_cat4"] ,2);
		$dados["total_cat2_cat4_depre"]			= Agro_Util::round($dados["total_cat2_cat4_depre"] ,2);		
		$dados["total_cat2_descarte"]			= Agro_Util::round($dados["total_cat2_descarte"] ,2);
		$dados["total_cat2_descarte_depre"]		= Agro_Util::round($dados["total_cat2_descarte_depre"] ,2);

		$dados["total_cat3_cat3"]				= Agro_Util::round($dados["total_cat3_cat3"] ,2);
		$dados["total_cat3_cat3_depre"]			= Agro_Util::round($dados["total_cat3_cat3_depre"] ,2);
		$dados["total_cat3_cat4"]				= Agro_Util::round($dados["total_cat3_cat4"] ,2);
		$dados["total_cat3_cat4_depre"]			= Agro_Util::round($dados["total_cat3_cat4_depre"] ,2);		
		$dados["total_cat3_descarte"]			= Agro_Util::round($dados["total_cat3_descarte"] ,2);
		$dados["total_cat3_descarte_depre"]		= Agro_Util::round($dados["total_cat3_descarte_depre"] ,2);		
		
		$dados["total_cat4_cat4"]				= Agro_Util::round($dados["total_cat4_cat4"] ,2);
		$dados["total_cat4_cat4_depre"]			= Agro_Util::round($dados["total_cat4_cat4_depre"] ,2);		
		$dados["total_cat4_descarte"]			= Agro_Util::round($dados["total_cat4_descarte"] ,2);
		$dados["total_cat4_descarte_depre"]		= Agro_Util::round($dados["total_cat4_descarte_depre"] ,2);		
		
		$dados["total_descarte_descarte"]		= Agro_Util::round($dados["total_descarte_descarte"] ,2);
		$dados["total_descarte_descarte_depre"]	= Agro_Util::round($dados["total_descarte_descarte_depre"] ,2);
		
		$dados["total"]	+= $dados["total_cat1_cat1"];
		$dados["total"]	+= $dados["total_cat1_cat2"];
		$dados["total"]	+= $dados["total_cat1_cat3"];
		$dados["total"]	+= $dados["total_cat1_cat4"];
		$dados["total"]	+= $dados["total_cat1_descarte"];
		$dados["total"]	+= $dados["total_cat2_cat2"];
		$dados["total"]	+= $dados["total_cat2_cat3"];
		$dados["total"]	+= $dados["total_cat2_cat4"];
		$dados["total"]	+= $dados["total_cat2_descarte"];
		$dados["total"]	+= $dados["total_cat3_cat3"];
		$dados["total"]	+= $dados["total_cat3_cat4"];
		$dados["total"]	+= $dados["total_cat3_descarte"];		
		$dados["total"]	+= $dados["total_cat4_cat4"];
		$dados["total"]	+= $dados["total_cat4_descarte"];		
		$dados["total"]	+= $dados["total_descarte_descarte"];
		
		$dados["total_depre"] += $dados["total_cat1_cat1_depre"];
		$dados["total_depre"] += $dados["total_cat1_cat2_depre"];
		$dados["total_depre"] += $dados["total_cat1_cat3_depre"];
		$dados["total_depre"] += $dados["total_cat1_cat4_depre"];
		$dados["total_depre"] += $dados["total_cat1_descarte_depre"];
		$dados["total_depre"] += $dados["total_cat2_cat2_depre"];
		$dados["total_depre"] += $dados["total_cat2_cat3_depre"];
		$dados["total_depre"] += $dados["total_cat2_cat4_depre"];
		$dados["total_depre"] += $dados["total_cat2_descarte_depre"];
		$dados["total_depre"] += $dados["total_cat3_cat3_depre"];
		$dados["total_depre"] += $dados["total_cat3_cat4_depre"];
		$dados["total_depre"] += $dados["total_cat3_descarte_depre"];		
		$dados["total_depre"] += $dados["total_cat4_cat4_depre"];
		$dados["total_depre"] += $dados["total_cat4_descarte_depre"];		
		$dados["total_depre"] += $dados["total_descarte_descarte_depre"];
		
		if($dados["total_depre"] > 0){
			$dados["vl_percent_perdas"] = ($dados["total_depre"] / $dados["total"]); 
		} else {
			$dados["vl_percent_perdas"] = 0;
		}
		
		return $dados;
	}
	
	public function prepararDados($dados){
		$return = array();
		
		$return["id_laudo_final"] 						= $dados["id_laudo_final"];
    	$return["id_vistoria"] 							= $dados["id_vistoria"];
    	$return["id_cobertura"] 						= $dados["id_cobertura"];
    	$return["fl_vistoria_preliminar"] 				= $dados["fl_vistoria_preliminar"];
	    $return["id_item_segurado"] 					= $dados["id_item_segurado"];
	    $return["id_proposta"] 							= $dados["id_proposta"];
	    $return["id_processo"]							= $dados["id_processo"];
	    $return["fl_nao_vistoriada"] 					= $dados["fl_nao_vistoriada"];
	    $return["id_motivo_quadra_nao_vistoriada"] 		= $dados["id_motivo_quadra_nao_vistoriada"];
	    $return["id_laudo_final_item_segurado"]	 		= $dados["id_laudo_final_item_segurado"]; 
	    $return["fl_avalia_danos_anteriores"] 			= $dados["fl_avalia_danos_anteriores"]; 
	    $return["vl_percent_colhido"] 					= $dados["vl_percent_colhido"];
	    $return["vl_percent_perdas"] 					= $dados["vl_percent_perdas"];
	    $return["ds_coordenadas_geograficas"] 			= $dados["ds_coordenadas_geograficas"];
	    $return["fl_assinatura_segurado"] 				= $dados["fl_assinatura_segurado"];
	    $return["ds_observacao_assinatura_segurado"]	= $dados["ds_observacao_assinatura_segurado"]; 
    	$return["fl_assinatura_regulador"] 				= $dados["fl_assinatura_regulador"];
	    $return["ds_observacao_assinatura_regulador"]	= $dados["ds_observacao_assinatura_regulador"]; 
	    $return["ds_observacao"]						= $dados["ds_observacao"]; 
	    $return["dt_vistoria_data"] 					= $dados["dt_vistoria_data"];
	    $return["dt_vistoria_hora"] 					= $dados["dt_vistoria_hora"];
	    $return["dt_vistoria_minutos"] 					= $dados["dt_vistoria_minutos"];
	    $return["dt_vistoria"] 							= Agro_Util::joinDtVistoria($dados["dt_vistoria_data"], $dados["dt_vistoria_hora"], $dados["dt_vistoria_minutos"]);
		$return["vistoriadores"] 						= $dados["vistoriadores"];
		$return["auxiliares"]							= $dados["auxiliares"];
	    
		$return["amostras"] = array();
		
		for ($i = 1; $i < 12; $i++) {
			if ($dados["cat1_cat1-".$i]){
				$return["amostras"][$i] = array(
					"cat1_cat1" 		=> ($dados["cat1_cat1-".$i] ? $dados["cat1_cat1-".$i] : null),
					"cat1_cat2" 		=> ($dados["cat1_cat2-".$i] ? $dados["cat1_cat2-".$i] : null),
					"cat1_cat3" 		=> ($dados["cat1_cat3-".$i] ? $dados["cat1_cat3-".$i] : null),
					"cat1_cat4" 		=> ($dados["cat1_cat4-".$i] ? $dados["cat1_cat4-".$i] : null),
					"cat1_descarte" 	=> ($dados["cat1_descarte-".$i] ? $dados["cat1_descarte-".$i] : null),
					"cat2_cat2" 		=> ($dados["cat2_cat2-".$i] ? $dados["cat2_cat2-".$i] : null),
					"cat2_cat3" 		=> ($dados["cat2_cat3-".$i] ? $dados["cat2_cat3-".$i] : null),
					"cat2_cat4" 		=> ($dados["cat2_cat4-".$i] ? $dados["cat2_cat4-".$i] : null),
					"cat2_descarte" 	=> ($dados["cat2_descarte-".$i] ? $dados["cat2_descarte-".$i] : null),
					"cat3_cat3" 		=> ($dados["cat3_cat3-".$i] ? $dados["cat3_cat3-".$i] : null),
					"cat3_cat4" 		=> ($dados["cat3_cat4-".$i] ? $dados["cat3_cat4-".$i] : null),
					"cat3_descarte" 	=> ($dados["cat3_descarte-".$i] ? $dados["cat3_descarte-".$i] : null),
					"cat4_cat4" 		=> ($dados["cat4_cat4-".$i] ? $dados["cat4_cat4-".$i] : null),
					"cat4_descarte" 	=> ($dados["cat4_descarte-".$i] ? $dados["cat4_descarte-".$i] : null),				
					"descarte_descarte" => ($dados["descarte_descarte-".$i] ? $dados["descarte_descarte-".$i] : null),
					"total" 			=> ($dados["total-".$i] ? $dados["total-".$i] : null)
				);
			}
		}
		
		$return["cat1_cat1_depre"] 			= $dados["cat1_cat1_depre"];
		$return["cat1_cat2_depre"] 			= $dados["cat1_cat2_depre"];
		$return["cat1_cat3_depre"] 			= $dados["cat1_cat3_depre"];
		$return["cat1_cat4_depre"] 			= $dados["cat1_cat4_depre"];
		$return["cat1_descarte_depre"] 		= $dados["cat1_descarte_depre"];
		$return["cat2_cat2_depre"] 			= $dados["cat2_cat2_depre"];
		$return["cat2_cat3_depre"] 			= $dados["cat2_cat3_depre"];
		$return["cat2_cat4_depre"] 			= $dados["cat2_cat4_depre"];		
		$return["cat2_descarte_depre"] 		= $dados["cat2_descarte_depre"];
		$return["cat3_cat3_depre"] 			= $dados["cat3_cat3_depre"];
		$return["cat3_cat4_depre"] 			= $dados["cat3_cat4_depre"];		
		$return["cat3_descarte_depre"] 		= $dados["cat3_descarte_depre"];
		$return["cat4_cat4_depre"] 			= $dados["cat4_cat4_depre"];		
		$return["cat4_descarte_depre"] 		= $dados["cat4_descarte_depre"];
		$return["descarte_descarte_depre"]	= $dados["descarte_descarte_depre"];
		
		$return["total_cat1_cat1"] 					= $dados["total_cat1_cat1"];
		$return["total_cat1_cat1_depre"] 			= $dados["total_cat1_cat1_depre"];
		$return["total_cat1_cat2"] 					= $dados["total_cat1_cat2"];
		$return["total_cat1_cat2_depre"] 			= $dados["total_cat1_cat2_depre"];
		$return["total_cat1_cat3"] 					= $dados["total_cat1_cat3"];
		$return["total_cat1_cat3_depre"] 			= $dados["total_cat1_cat3_depre"];
		$return["total_cat1_cat4"] 					= $dados["total_cat1_cat4"];
		$return["total_cat1_cat4_depre"] 			= $dados["total_cat1_cat4_depre"];				
		$return["total_cat1_descarte"] 				= $dados["total_cat1_descarte"];
		$return["total_cat1_descarte_depre"] 		= $dados["total_cat1_descarte_depre"];
		$return["total_cat2_cat2"] 					= $dados["total_cat2_cat2"];
		$return["total_cat2_cat2_depre"] 			= $dados["total_cat2_cat2_depre"];
		$return["total_cat2_cat3"] 					= $dados["total_cat2_cat3"];
		$return["total_cat2_cat3_depre"] 			= $dados["total_cat2_cat3_depre"];
		$return["total_cat2_cat4"] 					= $dados["total_cat2_cat4"];
		$return["total_cat2_cat4_depre"] 			= $dados["total_cat2_cat4_depre"];				
		$return["total_cat2_descarte"] 				= $dados["total_cat2_descarte"];
		$return["total_cat2_descarte_depre"] 		= $dados["total_cat2_descarte_depre"];
		$return["total_cat3_cat3"] 					= $dados["total_cat3_cat3"];
		$return["total_cat3_cat3_depre"] 			= $dados["total_cat3_cat3_depre"];
		$return["total_cat3_cat4"] 					= $dados["total_cat3_cat4"];
		$return["total_cat3_cat4_depre"] 			= $dados["total_cat3_cat4_depre"];				
		$return["total_cat3_descarte"] 				= $dados["total_cat3_descarte"];
		$return["total_cat3_descarte_depre"] 		= $dados["total_cat3_descarte_depre"];
		$return["total_cat4_cat4"] 					= $dados["total_cat4_cat4"];
		$return["total_cat4_cat4_depre"] 			= $dados["total_cat4_cat4_depre"];				
		$return["total_cat4_descarte"] 				= $dados["total_cat4_descarte"];
		$return["total_cat4_descarte_depre"] 		= $dados["total_cat4_descarte_depre"];				
		$return["total_descarte_descarte"] 			= $dados["total_descarte_descarte"];
		$return["total_descarte_descarte_depre"]	= $dados["total_descarte_descarte_depre"];
		$return["total"]							= $dados["total"];
		$return["total_depre"]						= $dados["total_depre"];
		
		return $return;
	}
	
	public function avalicao($dados){
		$dados["avaliacao"] = array();
		$dados["avaliacao"]["amostras"] = array();
		
		$dados["avaliacao"]["total"] 			= 0.0;
		$dados["avaliacao"]["total_cat1"] 		= 0.0;
		$dados["avaliacao"]["total_cat2"] 		= 0.0;
		$dados["avaliacao"]["total_cat3"] 		= 0.0;
		$dados["avaliacao"]["total_cat4"] 		= 0.0;
		$dados["avaliacao"]["total_descarte"] 	= 0.0;
		
		for ($i = 1; $i < 12; $i++) {
			$dados["avaliacao"]["amostras"][$i]["cat1"] 	= 0.0;
			$dados["avaliacao"]["amostras"][$i]["cat2"] 	= 0.0;
			$dados["avaliacao"]["amostras"][$i]["cat3"] 	= 0.0;
			$dados["avaliacao"]["amostras"][$i]["cat4"] 	= 0.0;
			$dados["avaliacao"]["amostras"][$i]["descarte"] = 0.0;

			if ($dados["amostras"][$i]){
				foreach ($dados["amostras"][$i] as $key => $value){
					if (in_array($key, array("cat1_cat1", "cat1_cat2", "cat1_cat3", "cat1_cat4", "cat1_descarte"))){
						$dados["avaliacao"]["amostras"][$i]["cat1"] += $value;
						$dados["avaliacao"]["total_cat1"] 			+= $value;
						
					} elseif (in_array($key, array("cat2_cat2", "cat2_cat3", "cat2_cat4", "cat2_descarte"))){
						$dados["avaliacao"]["amostras"][$i]["cat2"] += $value;
						$dados["avaliacao"]["total_cat2"] 			+= $value;
						
					} elseif (in_array($key, array("cat3_cat3", "cat3_cat4", "cat3_descarte"))){
						$dados["avaliacao"]["amostras"][$i]["cat3"] += $value;
						$dados["avaliacao"]["total_cat3"] 			+= $value;
						
					} elseif (in_array($key, array("cat4_cat4", "cat4_descarte"))){
						$dados["avaliacao"]["amostras"][$i]["cat4"] += $value;
						$dados["avaliacao"]["total_cat4"] 			+= $value;
						
					}elseif (in_array($key, array("descarte_descarte"))){
						$dados["avaliacao"]["amostras"][$i]["descarte"] += $value;
						$dados["avaliacao"]["total_descarte"] 			+= $value;
					}
				}
				
				$dados["avaliacao"]["amostras"][$i]["total"] 	= 0.0;
				
				foreach ($dados["avaliacao"]["amostras"][$i] as $key => $value){
					if ($value > 0){
						$dados["avaliacao"]["amostras"][$i]["total"] += $value;
						$dados["avaliacao"]["total"] += $value;
					}
				}
			}
		}
		
		return $dados;
	}
	
	public function get($idLaudoFinalItemSegurado){
	 	$ModelLfIS = new Sinistro2_Model_LaudosFinaisItensSegurados();
		$ModelIS = new Seguro_Model_ItensSegurados();
        
		/*
		 * Busca dados globais
		 */
		$dados = $ModelLfIS->getDataLaudoFinalItemSegurado($idLaudoFinalItemSegurado);
        
		/*
		 * Busca dados especialização
		 */			
		if (!$dados['fl_nao_vistoriada']) {
    		$select = $this->select()->setIntegrityCheck(false);
            $select->from(array("lfisX" => "$this->_schema.lf015_itens_segurados") , array("id_laudo_final_item_segurado", 
            																				"total_cat1_cat1", 
            																				"total_cat1_cat1_depre", 
            																				"total_cat1_cat2", 
            																				"total_cat1_cat2_depre", 
            																				"total_cat1_cat3", 
            																				"total_cat1_cat3_depre", 
            																				"total_cat1_cat4",
            																				"total_cat1_cat4_depre", 
            																				"total_cat1_descarte", 
            																				"total_cat1_descarte_depre", 
            																				"total_cat2_cat2", 
            																				"total_cat2_cat2_depre",
            																				"total_cat2_cat3", 
            																				"total_cat2_cat3_depre",
            																				"total_cat2_cat4", 
            																				"total_cat2_cat4_depre",                           
            																				"total_cat2_descarte", 
            																				"total_cat2_descarte_depre",
            																				"total_cat3_cat3", 
            																				"total_cat3_cat3_depre",
            																				"total_cat3_cat4", 
            																				"total_cat3_cat4_depre",                           
            																				"total_cat3_descarte", 
            																				"total_cat3_descarte_depre",
            																				"total_cat4_cat4", 
            																				"total_cat4_cat4_depre",                           
            																				"total_cat4_descarte", 
            																				"total_cat4_descarte_depre",                         
            																				"total_descarte_descarte", 
            																				"total_descarte_descarte_depre", 
            																				"total", 
            																				"total_depre"));
            $select->where('id_laudo_final_item_segurado = ?', $idLaudoFinalItemSegurado);
            
            $especializacao = $this->fetchRow($select);
            $especializacao = ($especializacao ? $especializacao->toArray() : array());
            
            $dados = array_merge($dados, $especializacao);
        }
        
        /*
         * Busca Amostras
         */
        $dados["amostras"] = array();

        if (!$dados['fl_nao_vistoriada']) {
            $amostras = $this->fetchAll("id_laudo_final_item_segurado = $idLaudoFinalItemSegurado");
            
            $amostras = ($amostras ? $amostras->toArray() : array());
            
            foreach ($amostras as $amostra){
            	$dados["amostras"][$amostra["nr_amostra"]] = $amostra;
            }
        }
        
        return $dados;
	}
}
