<?php
require_once(dirname(dirname(__FILE__))."/paineladm/funcoes.php");
$pathlocal = dirname(__FILE__);
//require_once(dirname($pathlocal)."/paineladm/classes/fpdf.class.php");
//require_once(dirname($pathlocal)."/paineladm/classes/sessao.class.php");
$sessao = new sessao();
$mesNumero=$sessao->getVar('controle');
$idLabo=$sessao->getVar('idLabo');
$cliente=strtoupper($sessao->getVar('cliente' ) ?? "");
$inicio=$sessao->getVar('inicio');
$anoCorrente=$sessao->getVar('anocorrente');
$anoAmostra=$anoCorrente;
$enquadramento=$finalidade;$nomeOperador=$sessao->getVar('nomeuser');
//echo("amostralong= $amostraLong<br>");
$objetocalculo = new calculos(); //calcula todos valores finais
$vetorCabecalho=$objetocalculo->dadoslaboratorio();

$pdf=new FPDF('P','mm','A4'); //parametos da pagina 
 $pdf->open();//abre o fpdf
 //$pdf->AddPage();//adicionando a primera pafina
 $pdf->SetDrawColor(10,10,10);
 $maximoHAdobe=297;//isso para vertical
 $maximoLAdobe=210;//isso para vertical
 $maximoLAdobe=297;//isso para horizontal
 $maximoHAdobe=210;//isso para horizontal
 $margemEsquerdaExterna=10;
 $margemEsquerda=10;
 $margemDireita=$maximoLAdobe-6;
 $larguraUtil=$maximoLAdobe-16;
 $futer=$maximoHAdobe-10;
 //$larguraUtil=$maximoLAdobe;
 $cinza=220;
 //$fonte="Arial";
 $nomeOperador=5;
 $pdf->SetFillColor($cinza,$cinza,$cinza); 
 $pdf->AddPage();//adicionando a primera pafina 
 
$posicaoCab1=60;$posicaoCab2=45;
$caminhoFinal="ImagensClientes/i".$idLabo.".JPG";
$pdf->Image($caminhoFinal,11,3,48,23,'JPG');
$pdf->SetFont('Arial','',10);
$pdf->setXY($posicaoCab1,$cota1);$pdf->Cell(140,5,utf8_decode($vetorCabecalho[0]),0,1,'L');//lab nome
$pdf->setXY($posicaoCab1,$cota1+5);$pdf->Cell(140,5,utf8_decode($vetorCabecalho[1]),0,1,'L');//lab nome
$pdf->setXY($posicaoCab1,$cota1+10);$pdf->Cell(140,5,utf8_decode($vetorCabecalho[2]),0,1,'L');//lab nome
$pdf->setXY($posicaoCab1,$cota1+15);$pdf->Cell(140,5,utf8_decode($vetorCabecalho[3]),0,1,'L');//lab nome



//imp´rime o titulo
$cotaY1=30;
$pdf->setXY($margemEsquerda,$cotaY1);
$pdf->Cell(190,5,utf8_decode('ENSAIOS REALIZADOS POR NÚMERO ( TESTE OU ANÁLISE ) mes/ano').$mesNumero."/".$anoCorrente,1,1,'C',1);//lab nome

$testes='wwwwwwww3456'.$mesNumero."/".$anoCorrente;


//esta matriz de titulos das colunas
 $vetorTitulos[1][1]="Espécie/Grupo";
 $vetorTitulos[1][2]="Análise";
 $vetorTitulos[1][3]="Teste";
 $vetorTitulos[1][4]="Determ";
 $vetorTitulos[1][5]="Verif.";
 $vetorTitulos[1][6]="Determ";
 $vetorTitulos[1][7]="Teste";
 $vetorTitulos[1][8]="Teste";
 $vetorTitulos[1][9]="Teste";
 $vetorTitulos[1][10]="Outras";
 $vetorTitulos[1][11]="TOTAL";
 //segunda linha
  $vetorTitulos[2][2]="de";
 $vetorTitulos[2][3]="de";
 $vetorTitulos[2][4]="outras";
 $vetorTitulos[2][5]="Outras";
 $vetorTitulos[2][6]="de";
 $vetorTitulos[2][7]="de";
 $vetorTitulos[2][8]="de";
 $vetorTitulos[2][9]="OGM";
 $vetorTitulos[2][10]="determ.";
 //terceira linha
  $vetorTitulos[3][2]="pureza";
 $vetorTitulos[3][3]="germinação";
 $vetorTitulos[3][4]="Semente";
 $vetorTitulos[3][5]="Cultivares";
 $vetorTitulos[3][6]="pragas";
 $vetorTitulos[3][7]="Tetrazólio";
 $vetorTitulos[3][8]="sanidade";
 //quarta linha
  $vetorTitulos[4][4]="por Nº";
 



//grade principal fixa 
 $vetorFinal[1][0]="ARROZ";           
 $vetorFinal[2][0]="AVEIA BRANCA";    
 $vetorFinal[3][0]="AVEIA PRETA";     
 $vetorFinal[4][0]="CENTEIO";         
 $vetorFinal[5][0]="CEVADA";          
 $vetorFinal[6][0]="CANOLA";          
 $vetorFinal[7][0]="FEIJÃO";          
 $vetorFinal[8][0]="FLORESTAIS";      
 $vetorFinal[9][0]="AZEVÉM";          
 $vetorFinal[10][0]="ALFAFA";         
 $vetorFinal[11][0]="CORNICHÃO";      
 $vetorFinal[12][0]="ERVILHACA";      
 $vetorFinal[13][0]="MILHETO";        
 $vetorFinal[14][0]="TREVO BRANCO";   
 $vetorFinal[15][0]="TREVO VERMELHO"; 
 $vetorFinal[16][0]="OUTRAS FORRAGEIRAS";
 $vetorFinal[17][0]="FRUTÍFERAS";     
 $vetorFinal[18][0]="GIRASSOL";       
 $vetorFinal[19][0]="MEDICINAIS";     
 $vetorFinal[20][0]="MILHO";          
 $vetorFinal[21][0]="OLERÍCOLAS";     
 $vetorFinal[22][0]="ORNAMENTAIS";    
 $vetorFinal[23][0]="OUTRAS";         
 $vetorFinal[24][0]="SOJA";           
 $vetorFinal[25][0]="SORGO";          
 $vetorFinal[26][0]="TRIGO";          
 $vetorFinal[27][0]="TRIGO DURO";     
 $vetorFinal[28][0]="TRITICALE";      
 $vetorFinal[29][0]="Total";
 $vetorFinal[30][0]="Nº Det";

 $cotaY1+=10;
 $cotaYInicio=$cotaY1+4;
 $pdf->SetFont('Arial','',7);

//IMPRIME A GRADE DE TITULOS 
for($i=1;$i<=4;$i++):
   $largura=40;
   $cotaY1+=4;
   $pdf->setXY($margemEsquerda,$cotaY1);
   for($j=1;$j<=11;$j++):
      if($j>1)$largura=15;
      $pdf->Cell($largura,4,utf8_decode($vetorTitulos[$i][$j]),0,0,'C',1);//lab nome
   endfor;
endfor;
//coloca os varios retangulos
   //$pdf->setXY($margemEsquerda,$cotaY1);
   for($j=1;$j<=11;$j++):
      if($j==1):
	     $posicao=$margemEsquerda;
         $largura=40;		 
	  else:
         $largura=15;		 
 	  endif;
	  $pdf->Rect($posicao,$cotaYInicio,$largura,16);//lab nome
	  $posicao+=$largura;	 
   endfor;




//precisa colocar a clausula distinct, pois pode acontecer de a amostras ser colocada em dois documentos
$sqlSeletor="select distinct fic_testes_realizar,fic_id,esp_nome,esp_tipo,doc_tipo from ficha,cultivar,especies,documentos,documentosponte  where fic_labo=".$idLabo." and dpo_amostra_vinculada=fic_id && dpo_documento_autonumerador=doc_id &&  year(doc_data)='".$anoCorrente."'  and MONTH(doc_data)='".$mesNumero."' and fic_cultivar=ctv_id && ctv_especie=esp_id ";	
//ENTRA DE QUAKQUER MANEIRA
$generica=new tabelagenerica();
$generica->extras_select =$sqlSeletor;
$generica->selecionaCamposEspecial($generica);

$contador=0;
$contaRegistros=0;
while ($res = $generica->retornaDados()):
    $linha=0;
    $contaRegistros++;
    //captura os dados do registro
    $amostraLong=$res->fic_id;
    $nomeComum=trim($res->esp_nome);
    $tipo=trim($res->esp_tipo);
	$tipoDocumento=$res->doc_tipo;
	$testesConcatenados=$res->fic_testes_realizar;
    //list($r[1],$r[2],$r[3],$r[4],$r[5],$r[6],$r[7],$r[8],$r[9],$r[10],$r[11],$r[12],$r[13],$r[14],$r[15],$r[16],$r[17],$r[18],$r[19],$r[20])= explode(";", $testesConcatenados);
    //coloca os tstes em vetores
    //examina quantos testes existem
	$tama=strlen($testesConcatenados);
	$item=0;
	for($i=1;$i<=$tama;$i++):	
	   $capturaUnicoElemento=substr($testesConcatenados,$i,1);
       if($capturaUnicoElemento==";"):
           $item++;
	       $vetorItens[$item]=substr($testesConcatenados,$i-3,3);
	   endif;
	endfor;
	
    //define a linha  que pertence
	if($nomeComum=='ARROZ')$linha=1;
    //se ele achar aveia nas primeiras 5 letras e nao for aveia preta joga na linha2 EXEMPLO AVEIA AMARELA  AVEIA BRANCA oi simplesmente AVEIA
    if(substr($nomeComum,0,5)=="AVEIA"  && $nomeComum!="AVEIA PRETA")$linha=2;
 	if($nomeComum=='AVEIA PRETA')$linha=3;
	if($nomeComum=='CENTEIO')$linha=4;
	if($nomeComum=='CEVADA')$linha=5;
	if($nomeComum=='CANOLA')$linha=6;
	if($nomeComum=='FEIJÃO')$linha=7;
	if(substr($nomeComum,0,4)=='AZEV')$linha=9;
	if($nomeComum=='ALFAFA')$linha=10;
	if($nomeComum=='CORNICHÃO')$linha=11;
	if($nomeComum=='ERVILHACA')$linha=12;
	if($nomeComum=='MILHETO')$linha=13;
	if($nomeComum=='TREVO BRANCO')$linha=14;
	if($nomeComum=='TREVO VERMELHO')$linha=15;
	if($nomeComum=='GIRASSOL')$linha=18;
	if($nomeComum=='MILHO')$linha=20;
	if($nomeComum=='SOJA')$linha=24;
	if($nomeComum=='SORGO')$linha=25;
	if($nomeComum=='TRIGO')$linha=26;
	if($nomeComum=='TRIGO DURO')$linha=27;
	if($nomeComum=='TRITICALE')$linha=28;
    //pesquisar os grupos da ras pois o grupo da in é diferente(ras tem medicinal,florestal e nao in so tem 2 grupos)
    if($linha==0):
    	if($tipo=='FO-FORRAGEIRA')$linha=16;
    endif;
	
	//se nao achou enquadramento algum entao joga em OUTRAS
    if($linha==0):
    	$linha=23;
    endif;
	
	if($tama>0):
       //$vetorFinal[10][1]=$tama;
      // $vetorFinal[10][2]= $vetorItens[1];
      // $vetorFinal[10][3]= $cliente;
       //$vetorFinal[10][4]= $item;
	endif;
	
	
    for($colecao=1;$colecao<=$item;$colecao++):
      $texto=$vetorItens[$colecao];
      ///AQUI VAI TRABALHAR contando  OS TESTES SOLICITADOS	
		   if($texto=="PUR")$vetorFinal[$linha][1]++;//se tiver o teste de pureza incrementa na coluna 1 
		   if($texto=="GER")$vetorFinal[$linha][2]++;//se tiver o teste de germ incrementa na coluna 2
		   if($texto=="DOS")$vetorFinal[$linha][3]++;//se tiver o teste de dos incrementa na coluna 3 
		   if($texto=="OCV")$vetorFinal[$linha][4]++;//se tiver o teste de OCV incrementa na coluna 4
		   if($texto=="PRQ")$vetorFinal[$linha][5]++;//se tiver o teste de ?????? incrementa na coluna 5
		   if($texto=="TZO" || $texto=="TZF")$vetorFinal[$linha][6]++;//se tiver o teste de TETRAZOLIO incrementa na coluna 6 
		   if($texto=="SAN")$vetorFinal[$linha][7]++;//se tiver o teste de SANIDADE incrementa na coluna 7
		   if($texto=="OGM")$vetorFinal[$linha][8]=$linha;//se tiver o teste de OGM incrementa na coluna 8
	       //AQUI AS OUTRAS DETERMINACOES 
	       if($texto=="VIG")$vetorFinal[$linha][9]++;//se tiver o teste de VIGOR SIMPLES incrementa na coluna 9 DE OD
	       if($texto=="PMS")$vetorFinal[$linha][9]++;//se tiver o teste de PMS incrementa na coluna  9 DE OD
	       if($texto=="FRI")$vetorFinal[$linha][9]++;//se tiver o teste de FRIO incrementa na coluna 9 DE OD
	       if($texto=="INF")$vetorFinal[$linha][9]++;//se tiver o teste de INF incrementa na coluna 9 DE OD
	       if($texto=="DTU")$vetorFinal[$linha][9]++;//se tiver o teste de DTU incrementa na coluna 9 DE OD
		   //situacao especial do laboratorio Dimicron
		   if(substr($cliente,0,8)=='DIMICRON'):
		      if($texto=="PC1"):
			      $vetorFinal[$linha][1]++;//SOMA 1 NA PUREZA COLuna 1 
			      $vetorFinal[$linha][2]++;//SOMA 1 NA GERM COLuna 2
			      $vetorFinal[$linha][3]++;//SOMA 1 NA DOS COLuna 3 
			      //$vetorFinal[$linha][4]++;//SOMA 1 NA OCV COLuna 4 
				  if($tipoDocumento=='Boletim')$vetorFinal[$linha][5]++;//SOMA 1 NA PRQ COLuna 5 
				  $vetorFinal[$linha][6]++;//SOMA 1 NA TZO COLuna 6 
			      $vetorFinal[$linha][7]++;//SOMA 1 NA SANIDDAD COLuna 7 
			      //$vetorFinal[$linha][8]++;//SOMA 1 NA OGM COLuna 8 
			      $vetorFinal[$linha][9]+=2;//SOMA 5 DETE(EAC+PMS+QUI+FITO+IMAGEM) 
              endif;		       
		      if($texto=="PC2"):
				  $vetorFinal[$linha][1]++;//SOMA 1 NA PUREZA COLuna 1 
			      $vetorFinal[$linha][2]++;//SOMA 1 NA GERM COLuna 2
			      $vetorFinal[$linha][3]++;//SOMA 1 NA DOS COLuna 3 
			      //$vetorFinal[$linha][4]++;//SOMA 1 NA OCV COLuna 4 
			      $vetorFinal[$linha][5]++;//SOMA 1 NA PRQ COLuna 5 
			      $vetorFinal[$linha][6]++;//SOMA 1 NA TZO COLuna 6 
			      $vetorFinal[$linha][7]++;//SOMA 1 NA SANIDDAD COLuna 7 
			      //$vetorFinal[$linha][8]++;//SOMA 1 NA OGM COLuna 8 
			      $vetorFinal[$linha][9]+=2;//SOMA 5 DETE(EAC+PMS+QUI+FITO+IMAGEM) 
              endif;		       
		      if($texto=="PC3"):
				  $vetorFinal[$linha][1]++;//SOMA 1 NA PUREZA COLuna 1 
			      $vetorFinal[$linha][2]++;//SOMA 1 NA GERM COLuna 2
			      $vetorFinal[$linha][3]++;//SOMA 1 NA DOS COLuna 3 
			      //$vetorFinal[$linha][4]++;//SOMA 1 NA OCV COLuna 4 
			      //$vetorFinal[$linha][5]++;//SOMA 1 NA PRQ COLuna 5 
			      $vetorFinal[$linha][6]++;//SOMA 1 NA TZO COLuna 6 
			      //$vetorFinal[$linha][7]++;//SOMA 1 NA SANIDDAD COLuna 7 
			      //$vetorFinal[$linha][8]++;//SOMA 1 NA OGM COLuna 8 
			      $vetorFinal[$linha][9]+=2;//SOMA 5 DETE(EAC+PMS+QUI+FITO+IMAGEM) 
              endif;		       
		      if($texto=="PC4"):
				  $vetorFinal[$linha][1]++;//SOMA 1 NA PUREZA COLuna 1 
			      $vetorFinal[$linha][2]++;//SOMA 1 NA GERM COLuna 2
			      $vetorFinal[$linha][3]++;//SOMA 1 NA DOS COLuna 3 
			      //$vetorFinal[$linha][4]++;//SOMA 1 NA OCV COLuna 4 
			      //$vetorFinal[$linha][5]++;//SOMA 1 NA PRQ COLuna 5 
			      $vetorFinal[$linha][6]++;//SOMA 1 NA TZO COLuna 6 
			      //$vetorFinal[$linha][7]++;//SOMA 1 NA SANIDDAD COLuna 7 
			      //$vetorFinal[$linha][8]++;//SOMA 1 NA OGM COLuna 8 
			      $vetorFinal[$linha][9]+=2;//SOMA 5 DETE(EAC+PMS+QUI+FITO+IMAGEM) 
              endif;		       
		      if($texto=="PC5"):
				  $vetorFinal[$linha][1]++;//SOMA 1 NA PUREZA COLuna 1 
			      $vetorFinal[$linha][2]++;//SOMA 1 NA GERM COLuna 2
			      $vetorFinal[$linha][3]++;//SOMA 1 NA DOS COLuna 3 
			      //$vetorFinal[$linha][4]++;//SOMA 1 NA OCV COLuna 4 
			      //$vetorFinal[$linha][5]++;//SOMA 1 NA PRQ COLuna 5 
			      //$vetorFinal[$linha][6]++;//SOMA 1 NA TZO COLuna 6 
			      //$vetorFinal[$linha][7]++;//SOMA 1 NA SANIDDAD COLuna 7 
			      //$vetorFinal[$linha][8]++;//SOMA 1 NA OGM COLuna 8 
			      $vetorFinal[$linha][9]+=2;//SOMA 5 DETE(EAC+PMS+QUI+FITO+IMAGEM) 
              endif;		       
		   endif;//final do tratamento de excessao Dimicron
		endfor;  //fim do acha testes  
endwhile;

//soma as linhas
for($i=1;$i<=28;$i++):
   $contador=0;
   for($j=1;$j<=9;$j++):
      $contador+=$vetorFinal[$i][$j];
   endfor;
   $vetorFinal[$i][10]=$contador;
endfor;

//soma as colunas
for($j=1;$j<=10;$j++):
   $contador=0;
   for($item=1;$item<=28;$item++):
      $contador+=$vetorFinal[$item][$j];
   endfor;
   $vetorFinal[29][$j]=$contador;
endfor;

//ajusta a ultima linha por multiplicadores
for($j=1;$j<=9;$j++):
   if($j==1)$vetorFinal[30][$j]=$vetorFinal[29][$j]*3;
   if($j==2 || $j==3)$vetorFinal[30][$j]=$vetorFinal[29][$j]*4;
   if($j>3)$vetorFinal[30][$j]=$vetorFinal[29][$j];
endfor;

//soma todas detes
   for($j=1;$j<=9;$j++):
      $vetorFinal[30][10]+=$vetorFinal[30][$j];
   endfor;






 
//IMPRIME A GRADE PRINCIPAL        
for($i=1;$i<=30;$i++):
   $largura=40;
   $cotaY1+=4;
   $pdf->setXY($margemEsquerda,$cotaY1);
   for($j=0;$j<=10;$j++):
      if($j>0)$largura=15;
      $pdf->Cell($largura,4,utf8_decode($vetorFinal[$i][$j]),1,0,'C');//lab nome
   endfor;
endfor;

//IMPRIME LOCAL DATA E ASSINATURA
$cotaFinal=230;
$pdf->setXY(80,$cotaFinal);
$pdf->Cell(100,5,utf8_decode($vetorCabecalho[6]).', '.date("d/m/Y"),0,1,'L');//
//captura o rt
 $vetorTecnico=$objetocalculo->dadostecnico($idLabo,'BOLE');
 $cota4=$cotaFinal;
 $cota7=$cota4;
 $cotaLinha=$cota4;
 $pdf->setXY(100,$cota7-10);
 $base[4][3]=$vetorTecnico[1];
 $base[5][3]="RENASEM:".$vetorTecnico[3]."  CREA:".$vetorTecnico[2];
 $base[6][3]=$vetorTecnico[7];// seria o cargo?
 $pdf->SetXY(100,$cota7);$pdf->Cell(90,5,utf8_decode($base[1][3]),0,1,'L');	
 $pdf->Line(100,$cota7+25,190,$cota7+25);//linha separadora horizontal
 $pdf->SetXY(100,$cota7+26);$pdf->Cell(90,5,utf8_decode($base[4][3]),0,1,'C');	
 $pdf->SetXY(100,$cota7+31);$pdf->Cell(90,5,utf8_decode($base[5][3]),0,1,'C');	
 $pdf->SetXY(100,$cota7+36);$pdf->Cell(90,5,utf8_decode($base[6][3]),0,1,'C');	//ESTE ITEM É ASSINATURA SIM;NAO	
 $pdf->SetFont('Arial','',8);
 
 //linha para fazer testes 
 //$pdf->setXY(10,280);$pdf->Cell(140,5,'xxxxxxxxxxxeliminar:'.$testes. $nomeComum .$linha .$tipoDocumento,0,1,'L');//lab nome


//aqui como era
//$vetorTecnico=$objetocalculo->dadostecnico($idLabo,'BOLE');
//$nomeTecnico=$vetorTecnico[1];//nome do rt
//IMPRIME O TECNICO
//$pdf->Line(130,$cotaFinal,190,$cotaFinal);
//$pdf->setXY(110,$cotaFinal);
//$pdf->Cell(100,5,utf8_decode($nomeTecnico),0,1,'C');//
//$pdf->setXY(110,$cotaFinal+5);
//$pdf->Cell(100,5,utf8_decode('Responsável técnico'),0,1,'C');//


ob_clean(); // Quando usava essa classe o ob_clean() resolvia meu problema
$pdf->Output("arquivo.pdf","I");

		
		
?>
