<?php
include "../ver_sessao.php";
include "../conecta.php";


// ------------------------------------------------------------------------------------------
// SE RECEBE UM ARGUMENTO PELO GET, DIRECIONA PARA A TELA DE IMPRESSAO
// ------------------------------------------------------------------------------------------
if( $_GET[i] ) {

	if( md5($_GET[i]) != $_GET[s] )
		exit;

	$_POST[acao] = 'layout_imprime';
	$_POST[id]  = $_GET[i];
	
}


function cadastra_recebimento_produto() {


	// --------------------------------------------------------------------------------
	// DA ENTRADA NO ESTOQUE
	// --------------------------------------------------------------------------------
	$qtde_recebida = $_POST[qtde_recebida];
	$id_lista_recebida	= $_POST[id_lista_recebida];
	$t = count($qtde_recebida);
	
	for($i=0; $i!=$t; $i++) {
		
		$qtde_vez = valor($qtde_recebida[$i]);

		$campos=array(list_tx_recebido,list_tx_status);
		$valores=array($qtde_vez,ativo);
		atualizar('listacompra',$campos,$valores,$id_lista_recebida[$i]);

/*		
		$a_lista = carregar('listacompra',$id_lista_recebida[$i]);
		
		if( $a_lista[list_tx_status] == 'ativo' ) {
			
			query("UPDATE produto SET prod_tx_qtde=prod_tx_qtde+$qtde_vez WHERE prod_nb_id='$a_lista[list_nb_produto]' ");
//			echo "UPDATE produto SET prod_tx_qtde=prod_tx_qtde+$qtde_vez WHERE prod_nb_id='$a_lista[list_nb_produto]' <br>";
			
			
		}
*/		
		
	}
/*	
	$campos=array(comp_tx_status);
	$valores=array(Recebido);
	atualizar('compra',$campos,$valores,$_POST[id]);
*/	
	atualizar('compra','comp_tx_status',"Recebido",$_POST[id]);
	index();
	// seleciona_layout_finaliza();
	exit;
	
}


function verifica_notafiscal() {

	if( $_GET[nf] == '' || $_GET[nf] == ' ' )
		return;

	$sql = selecionar('movimento','movi_tx_status,movi_tx_notafiscal,movi_nb_ref',"!inativo,$_GET[nf],$_GET[enti]",'');
	$total_linhas = num_linhas($sql);
	
	echo "<BR><BR>TOTAL LINHAS: $total_linhas";
	if( $total_linhas > 0 ) {
		
		javascript("
			
			alert('ATENÇÃO: Nota fiscal já existente!');
			
		");
		
	} else {
		
		javascript("
//			alert('OK');
		");
	
	}
	

}

function ids_agrupados($ids_agrupados) {
	
	$a = explode("-",$ids_agrupados);
	$a2 = array_unique($a);
	
	sort($a2);
	
	// SE TIVER ELEMENTOS EM BRANCO, REMOVE
	if( $a2[0] == '' ) 
		array_shift($a2);
	
	return $a2;
	
}

function exclui_compra(){

	remover('compra',$_POST[id]);
	index();
	exit;
	
}


function modifica_compra(){
	
	global $a_mod;
	$a_mod = carregar('compra,setor,entidade',$_POST[id]);
	layout_compra();
	exit;
	
}

function modifica_produto(){
	
	global $a_mod;
	$a_mod = carregar('listacompra,compra,produto',$_POST[id]);
	
	$_POST[id]=$a_mod[comp_nb_id];
	
	layout_produto();
	exit;
	
}


function exclui_produto(){
	

	$a_exc = carregar('listacompra,compra,produto',$_POST[id]);
	
	remover('listacompra',$a_exc[list_nb_id]);
	$_POST[id]=$a_exc[comp_nb_id];
	
	layout_produto();
	exit;
	
}

function cadastra_produto(){

//	echo"ENTROU!!!!";
//	exit;


	$a_un=carregar('unidade',$_POST[unidade]);
	$_POST[unidade]=$a_un[unid_tx_nome];

	$produto=$_POST[campo_produto_];
	$qtde=$_POST[qtde];
	$valor_un=$_POST[valor_un];
	$nome_prod=$_POST[nome_campo_produto_];


	// REMOVE PRODUTOS ANTIGOS, CASO ESTEJA ATUALIZANDO
//	$sql = selecionar('listacompra','list_nb_compra,list_tx_status',"$_POST[id],ativo");
//	while( $a = carrega_array($sql) ) {
//		remover('listacompra',$a[list_nb_id]);
//	}
	
	// INSERE OS VALORES NA TABELA _LISTACOMPRA_
	
	
//	$valor_vez = valor($valor_un[$i]);
//	$qtde_vez = valor($qtde[$i]);
//	$produto_vez = $_POST['campo_produto_'.$i];
	
	// NAO DEIXA CADASTRAR VALORES EM BRANCO
	//if( $valor_vez=='' || $produto_vez=='' || $qtde_vez=='' )	
	//	continue;

	$valores=array($_POST[id],$produto,valor($qtde),valor($valor_un),'ativo',$nome_prod,$_POST[unidade]);
	$campos=array(list_nb_compra,list_nb_produto,list_tx_qtde,list_tx_valor,list_tx_status,list_tx_produto,list_tx_unidade);
	if($_POST[a_mod]=='')
		inserir('listacompra',$campos,$valores,1);
	else{
		atualizar('listacompra',$campos,$valores,$_POST[a_mod]);
		unset($_POST[a_mod]);
	}
	layout_produto();
	exit;
	

}





function finaliza_produto() {
	
	
	if(mostra_valor($_POST[total],1)!=mostra_valor($_POST[valor_total_hidden2],1))
		$_POST[total]=$_POST[valor_total_hidden2];
		
	if(mostra_valor($_POST[valor_total_hidden2])==0){
		layout_produto();
		exit;
	}
		
	
	
	
	//exit;

	$produto=$_POST[produto];
	$qtde=$_POST[qtde];
	$valor_un=$_POST[valor_un];
	
	$t_produto = count($qtde);
	

	// EVITA QUE, POR ACASO, O COMPRADOR ATUALIZE DEPOIS DA SOLICITACAO TER SIDO AUTORIZADA
	$a_comp = carregar('compra',$_POST[id]);
	if( $a_comp[comp_tx_status] != 'Solicitado' && $a_comp[comp_tx_status] != 'inativo' ) {
		set_status('ERRO: Impossível gravas os dados!');
		index();
		exit;
	}
	
	

	// ATUALIZA A TABELA _COMPRA_ COM O STATUS FINAL		
	$campos=array(comp_tx_status,comp_tx_valor);
	$valores=array('Solicitado',$_POST[total]);
	atualizar('compra',$campos,$valores,$_POST[id]);
	
	
	$campos=array(comp_tx_status,comp_nb_userGestor,comp_tx_obsAutoriza,comp_tx_dataAutoriza,comp_nb_userAutoriza,comp_tx_arquivoAutoriza);
	$valores=array('Autorizado',1,$_POST[obs],date("Y-m-d H:i:s"),$_SESSION[user_nb_id],$arquivo_autoriza);
	atualizar('compra',$campos,$valores,$_POST[id]);

	
	set_status('Solicitação efetuada com sucesso!');
	index();
	exit;
	
}



function cadastra_compra() {

	if($_POST[setor]=='' || $_POST[fornecedor]=='' || valor($_POST[valor])=='0'){
		set_status("ERRO: Preencha todos os campos!");
		if( !$_POST[id] )
			layout_compra();
		else
			modifica_compra();
		exit;	
	}
	

	if( !$_POST[id] ) {
		
		$hoje = date("Y-m-d H:i:s");
		
		$campos=array(comp_nb_entidade,comp_nb_setor,comp_nb_userCadastro,comp_tx_dataCadastro,comp_tx_obsCadastro,comp_tx_status);
		$valores=array($_POST[fornecedor],$_POST[setor],$_SESSION[user_nb_id],$hoje,$_POST[obs],'inativo');
		inserir('compra',$campos,$valores,1);
		
		$_POST[id]=ultimo_reg('compra');	
/*		$sql = selecionar('comp_nb_id|compra','comp_nb_entidade,comp_nb_setor,comp_nb_userCadastro,comp_tx_dataCadastro,comp_tx_obsCadastro,comp_tx_status',
		"$_POST[fornecedor],$_POST[setor],$_SESSION[user_nb_id],$hoje,$_POST[obs],inativo"," ORDER BY comp_nb_id DESC");
		$a = carrega_array($sql);
		$_POST[id] = $a[0];
*/		
		
	} else {
	
		$campos=array(comp_nb_entidade,comp_nb_setor,comp_tx_dataCadastro,comp_tx_obsCadastro);
		$valores=array($_POST[fornecedor],$_POST[setor],date("Y-m-d H:i:s"),$_POST[obs]);
		atualizar('compra',$campos,$valores,$_POST[id]);

	}

	layout_produto();
	exit;
	
}


	

function layout_produto(){
	global $a_mod;
	
	
	
	$a_comp=carregar('compra,setor,entidade.user',$_POST[id],'comp_nb_userCadastro','.user_nb_id');

	// SE TIVER ATUALIZANDO, ENTAO CARREGA OS PRODUTOS JAH CADASTRADOS
	$sql=selecionar('listacompra,compra,produto','list_nb_compra,list_tx_status',"$_POST[id],ativo",'',0);	
	
	
	cabecalho('Financeiro de Compra',3);
	
	cactux::abre_form();
	
//	$t1[] = cactux::texto('Código:',zeros($a_comp[comp_nb_id],3),2);
	$t1[] = cactux::texto('Código:',$a_comp[comp_nb_id],2);
	$t1[] = cactux::texto('Setor:',$a_comp[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comp[user_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_comp[comp_tx_dataCadastro],1),2);

	$t2[] = cactux::texto('Fornecedor:',$a_comp[enti_tx_nome],4);
	$t2[] = cactux::texto('Descrição/Forma de Pagamento:',$a_comp[comp_tx_obsCadastro],4);
//	$t2[] = cactux::texto('Valor:',mostra_valor($a_comp[comp_tx_valor],1),2);

	$gravar=cactux::botao_submit('Gravar',2,'cadastra_produto','id,a_mod',"$_POST[id],$a_mod[list_nb_id]");
	
	//LIBERA O BOTAO FINALIZAR SOMENTE SE HOUVER NO MINIMO 1 PRODUTO
	$a_teste1=carregar('listacompra','','list_nb_compra,list_tx_status',"$_POST[id],ativo");
	if($a_teste1[0]!='')	
		$finaliza=cactux::botao('Finalizar',2,'finaliza','id',"$_POST[id]");
	
	$voltar=cactux::botao('Voltar',2,'voltar');
	
	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0],$t2[1],$t2[2]);
	cactux::fecha_fieldset();

	
	cactux::abre_fieldset('Informações dos Produtos');
	

	
	$produto = cactux::combo_net('Produto:','campo_produto_',$a_mod[prod_nb_id],$a_mod[prod_tx_nome],5,array('busca_div.php?c=produto','busca_net.php?c=produto'),"  onFocus=abre_proximo('div_produto_',".($i+1).")");
	
	if($a_mod[list_tx_unidade]!='')
		$a_un=carregar('unidade','','unid_tx_status,unid_tx_nome',"!inativo,$a_mod[list_tx_unidade]");
	
	//echo"ENTROU!";
	
	$unidade= cactux::combo_bd('Unidade:','unidade',$a_un[unid_nb_id],$a_un[unid_tx_nome],2,'unidade');
	$qtde = cactux::campo('Quantidade:','qtde',mostra_valor($a_mod[list_tx_qtde]),1," onkeyup='mascara_reais(this);calcula_total(1)'   id=qtde_".$i." ");
	$valor_un= cactux::campo('Valor Unitário:','valor_un',mostra_valor($a_mod[list_tx_valor]),2, "  id=valor_un_".$i." onkeyup='mascara_reais(this);calcula_total(1)'  ");

	
	cactux::linha_fieldset($produto,$unidade,$qtde,$valor_un);
	cactux::linha_fieldset($voltar,$gravar,$finaliza);

	//$c1[] = cactux::texto('&nbsp;',"<div style='text-align:right'><B>VALOR TOTAL: $exibe_valor</B></div>",8);
	//$c1[] = cactux::campo('&nbsp;','valor_total',mostra_valor($a_comp[comp_tx_valor]),2, " id=valor_final".MASCARA_VALOR);
	//cactux::linha_fieldset($c1[0],$c1[1]);
	cactux::fecha_fieldset();

	campo_hidden('valor_total_hidden1','0');
	cactux::fecha_form();
	
	
	
	while( $a=carrega_array($sql) ) {

		$modificar=".icone_modificar($a[list_nb_id],modifica_produto)";
		$excluir=".icone_excluir($a[list_nb_id],exclui_produto)";
	
	
		$valores[]=array($a[list_nb_id],$a[prod_tx_nome],$a[list_tx_unidade],mostra_valor($a[list_tx_qtde]),mostra_valor($a[list_tx_valor]),mostra_valor($a[list_tx_valor]*$a[list_tx_qtde]),$modificar,$excluir);
	
		$total_qtde+=$a[list_tx_qtde];
		$total_valor+=$a[list_tx_valor];
		$total_total+=($a[list_tx_valor]*$a[list_tx_qtde]);
		
	}
	
	//$valores[]=array('','','<b>TOTAL:</b>',"<b>".mostra_valor($total_qtde)."</b>","<b>".mostra_valor($total_valor)."</b>","<b>".mostra_valor($total_total)."</b>",'','');
	$valor_total=cactux::campo_simples('valor_total',mostra_valor($total_total),2, "maxlength=14 onkeyup='mascara_reais(this);valor_final(this.value)' ");
	$valores[]=array('','','','','<b>TOTAL:</b>',"<b>".mostra_valor($total_total)."</b>",'','');
	
	$valores[]=array('','','','','<b>VALOR FINAL:</b>',$valor_total,'','');
	
	$cabecalho[]=array('COD','PRODUTO','UNIDADE','QUANTIDADE','VALOR UN','VALOR','','');
	$cabecalho[]='c,e,e,e,e,e,e';
	$cabecalho[]='5%,,15%,15%,15%,15%,2%,2%';

	cactux::acao_botao('voltar','modifica_compra','id',$_POST[id]);
	cactux::acao_botao('finaliza','finaliza_produto','id,total,valor_total_hidden2,',"$_POST[id],$total_total,$total_total");
	
	grid::gerar($cabecalho,$valores);
	
	//$valor_fim=cactux::campo('Valor Total:','valor_total',mostra_valor($total_total),2, MASCARA_VALOR);
	
	javascript("
	
	function valor_final(valor) {
		
		window.document.finaliza.valor_total_hidden2.value = gera_valor(valor);
		
		
	}

	
	");
	
	
	
	rodape();
	

}


function cadastra_finaliza_agrupado() {
global $CACTUX_CONF;

	
	$ids=$_POST[IDS_MOV];

	$a_compra=carregar('compra',$ids[0]);

	$venc_boleto=$_POST[venc_boleto];
	$valor_boleto=$_POST[valor_boleto];

	$a_compra=carregar('compra',$_POST[id]);
	$sql_movimento=selecionar('boleto,movimento','movi_tx_status,bole_tx_status',"ativo,!inativo"," AND movi_nb_compra='$ids[0]'",0);

	if(num_linhas($sql_movimento)>0 && $venc_boleto[0]=='' && $valor_boleto[0]=='' && $_POST[numeroNf]!=''){
	
		while($a_mov=carrega_array($sql_movimento)){
			
			$cam=array(movi_tx_valordoc,movi_tx_notafiscal);
			$val=array(($a_mov[movi_tx_valordoc]+valor($_POST[valorNf])),$a_mov[movi_tx_notafiscal]."; $_POST[numeroNf]");
			atualizar('movimento',$cam,$val,$a_mov[movi_nb_id]);
			
			$cam=array(bole_tx_obs);
			$val=array($a_mov[movi_tx_notafiscal]."; $_POST[numeroNf]");
			atualizar('boleto',$cam,$val,$a_mov[bole_nb_id]);
			
		
		}
		
		
	
	}
	//-----------------------------------------------------------------------
	

	if($_POST[planoconta] == '' || $_POST[planoconta] == 0  ){
	
		set_status('ERRO: Preecha todos os campos!');
		index();
		exit;
	
	}
	
	
	$ids=$_POST[IDS_MOV];

	$a_compra=carregar('compra',$ids[0]);
	
	$valor_boleto=$_POST[valor_boleto];
	$obs_boleto=$_POST[obs_boleto];
	$venc_boleto=$_POST[venc_boleto];
	$baixa=$_POST[baixa_boleto];
	
	$t_boleto = count($venc_boleto);
	
	// if( $_POST[numeroNf] != '' ) {
	
		// $sql_teste=selecionar('movimento','movi_tx_status',"!inativo"," AND movi_nb_ref='$a_compra[comp_nb_entidade]' AND movi_tx_notafiscal='$_POST[numeroNf]'");
		// if( num_linhas($sql_teste) > 0 ) {
		
			// set_status('ERRO: Nota fiscal já cadastrada!');
			// layout_finaliza();
			// exit;
		// }
		
	// }
	
	
	$parcelas=0;
	
	for($i=0;$i!=$t_boleto;$i++){

		$valor_vez = valor($valor_boleto[$i]);
		$venc_vez = gera_data($venc_boleto[$i],1);
		$obs_vez = $obs_boleto[$i];
	
		if( $valor_vez=='0'  || $venc_vez=='' || $venc_vez == '0000-00-00')
			continue;
		else
			$parcelas++;
	}
	
	// if( $parcelas == 0 ) {
		// set_status('ERRO: Cadastre as informações do boleto');
		// layout_finaliza();
		// exit;
	// }
	
	
	$diretorio = $CACTUX_CONF['path'] . "/arquivos/financeiro/";
	$arq = isset($_FILES['arquivo1']) ? $_FILES['arquivo1'] : FALSE; 
	if( $arq ) {
		
		$nome = $diretorio . $ids[0]."_notafiscal".substr($arq['name'],-4);
		
		$r = @move_uploaded_file($arq['tmp_name'], $nome);
		if( $r == 1 ) {
			$nota_autoriza = $nome;
		} 
		
	} 

	$arq = isset($_FILES['arquivo2']) ? $_FILES['arquivo2'] : FALSE; 
	if( $arq ) {
		
		$nome = $diretorio .$ids[0]."_boleto".substr($arq['name'],-4);
		
		$r = @move_uploaded_file($arq['tmp_name'], $nome);
		if( $r == 1 ) {
			$boleto_autoriza = $nome;
		}
	} 
	

	
	
	$campos=array(movi_tx_tipo,movi_nb_centrocusto,movi_nb_planoconta,movi_nb_ref,movi_tx_data,movi_tx_valordoc,
			movi_tx_notafiscal,movi_tx_parcelas,movi_tx_status,movi_tx_documento,movi_tx_arquivo,movi_nb_compra);
	$valores=array(Saída,$_POST[centro],$_POST[planoconta],$a_compra[comp_nb_entidade],gera_data("hoje",1),valor($_POST[valorNf]),
			$_POST[numeroNf],$parcelas,ativo,$_POST[documento],basename($nota_autoriza),$ids[0]);
	
	inserir('movimento',$campos,$valores,1);
	
	$movi=ultimo_reg('movimento');
	$parcelas2=$parcelas;
	$parcelas = 0;
	
	for($j=0; $j!=$t_boleto; $j++){
	
		$valor_vez = valor($valor_boleto[$j]);
		$venc_vez = gera_data($venc_boleto[$j],1);
		$obs_vez = $obs_boleto[$j];
	
		if( $valor_vez=='0'  || $venc_vez=='' || $venc_vez == '0000-00-00')
			continue;
		
		if( $_POST[numeroNf] != '' )
			$obs_vez1 = " NF: $_POST[numeroNf] ";
		
		if( $valor_vez!='0'  || $venc_vez!='' || $venc_vez != '0000-00-00')
			$parcela_obs_vez;
		
	
		$obs_vez2 = (++$parcela_obs)."/".$parcelas2."  "; 
		
		if($baixa[$j]==''){
			$campos=array(bole_nb_movimento,bole_tx_previsao,bole_tx_vencimento,bole_tx_parcela,bole_tx_status,bole_tx_obs,bole_tx_valordoc,bole_tx_dataCadastro,bole_nb_userCadastro);
			$valores=array($movi,$venc_vez,$venc_vez,++$parcelas,ativo,$obs_vez2.$obs_vez.$obs_vez1,$valor_vez,gera_data("hoje",1),$_SESSION[user_nb_id]);
			inserir('boleto',$campos,$valores,1);
			unset($obs_vez1,$obs_vez2);
		} else {
			$campos=array(bole_nb_movimento,bole_tx_previsao,bole_tx_vencimento,bole_tx_parcela,bole_tx_status,bole_tx_obs,bole_tx_valordoc,bole_tx_dataCadastro,bole_nb_userCadastro,bole_tx_valor,bole_tx_data);
			$valores=array($movi,$venc_vez,$venc_vez,++$parcelas,encerrado,$obs_vez1.$obs_vez2.$obs_vez,$valor_vez,gera_data("hoje",1),$_SESSION[user_nb_id],$valor_vez,$venc_vez);
			inserir('boleto',$campos,$valores,1);
			
			$ultimo_boleto=ultimo_reg('boleto');
			
			$valores2=array($ultimo_boleto,1,$valor_vez,$venc_vez,ativo,$_POST[planoconta]);
			$campos2=array(fobo_nb_boleto,fobo_nb_forma,fobo_tx_valor,fobo_tx_data,fobo_tx_status,fobo_nb_planoconta);
			inserir('fobo',$campos2,$valores2,1);
			
			unset($obs_vez1,$obs_vez2);
		
		
		}
	}
	

	$t_ids=count($ids);
	
	for($x=0;$x!=$t_ids;$x++){

		$campos=array(comp_tx_status,comp_tx_dataFinaliza,comp_nb_userFinaliza,comp_tx_notaAutoriza,comp_tx_boletoAutoriza,comp_nb_movimento,comp_tx_obsFinaliza);
		$valores=array(Finalizado,date("Y-m-d H:i:s"),$_SESSION[user_nb_id],$nota_autoriza,$boleto_autoriza,$movi,$_POST[obs_finaliza]);
		atualizar('compra',$campos,$valores,$ids[$x]);
	}
	
	
	
	if( $_POST[adicionar] == 'Não' ) {
		set_status('Compra finalizada com sucesso!');
		index();
	} else {
		set_status('Nota Fiscal Adicionado!');
		seleciona_layout_finaliza();
	}
	
	
	//set_status('Compra finalizada com sucesso!');
//	index();

	exit;
}



function cadastra_finaliza() {
	global $CACTUX_CONF;
	
	$venc_boleto=$_POST[venc_boleto];
	$valor_boleto=$_POST[valor_boleto];

	$a_compra=carregar('compra',$_POST[id]);
	$sql_movimento=selecionar('boleto,movimento','movi_tx_status,bole_tx_status',"ativo,!inativo"," AND movi_nb_compra='$_POST[id]'");
	if(num_linhas($sql_movimento)>0 && $venc_boleto[0]=='' && $valor_boleto[0]=='' && $_POST[numeroNf]!=''){
	
		while($a_mov=carrega_array($sql_movimento)){
			
			$cam=array(movi_tx_valordoc,movi_tx_notafiscal);
			$val=array(($a_mov[movi_tx_valordoc]+valor($_POST[valorNf])),$a_mov[movi_tx_notafiscal]."; $_POST[numeroNf]");
			atualizar('movimento',$cam,$val,$a_mov[movi_nb_id]);
			
			$cam=array(bole_tx_obs);
			$val=array($a_mov[movi_tx_notafiscal]."; $_POST[numeroNf]");
			atualizar('boleto',$cam,$val,$a_mov[bole_nb_id]);
			
		
		}
		
		
	
	}
	//-----------------------------------------------------------------------
	
	if($_POST[planoconta] == '' || $_POST[planoconta] == 0  ){
	
		set_status('ERRO: Preecha todos os campos!');
		seleciona_layout_finaliza();
		exit;
	
	}
	

	$a_compra=carregar('compra',$_POST[id]);
	
	$valor_boleto=$_POST[valor_boleto];
	$obs_boleto=$_POST[obs_boleto];
	$venc_boleto=$_POST[venc_boleto];
	$baixa=$_POST[baixa_boleto];
	
	
	$t_boleto = count($venc_boleto);
	
	// if($_POST[numeroNf]!=''){
		// $sql_teste=selecionar('movimento','movi_tx_status',"!inativo"," AND movi_nb_ref='$a_compra[comp_nb_entidade]' AND movi_tx_notafiscal='$_POST[numeroNf]'");
		// if(num_linhas($sql_teste)>0){
		
			// set_status('ERRO: Nota fiscal já cadastrada!');
			// layout_finaliza();
			// exit;
		
		
		// }
	// }
	
	
	$parcelas=0;
	
	for($i=0;$i!=$t_boleto;$i++){

		$valor_vez = valor($valor_boleto[$i]);
		$venc_vez = gera_data($venc_boleto[$i],1);
		$obs_vez = $obs_boleto[$i];
	
		if( $valor_vez=='0'  || $venc_vez=='' || $venc_vez == '0000-00-00')
			continue;
		else
			$parcelas++;
			
	}
	
	// if( $parcelas == 0 ) {
		// set_status('ERRO: Cadastre as informações do boleto');
		// layout_finaliza_original();
		// exit;
	// }
	
	
	

	$diretorio = $_SERVER[DOCUMENT_ROOT] . $CACTUX_CONF['path'] . "arquivos/financeiro/";
	$arq = isset($_FILES['arquivo1']) ? $_FILES['arquivo1'] : FALSE; 
	if( $arq ) {
		
		$nome = $diretorio . $_POST[id]."_notafiscal".substr($arq['name'],-4);
		
		$r = @move_uploaded_file($arq['tmp_name'], $nome);
		if( $r == 1 ) {
			$nota_autoriza = $nome;
		} 
		
	} 

	$arq = isset($_FILES['arquivo2']) ? $_FILES['arquivo2'] : FALSE; 
	if( $arq ) {
		
		$nome = $diretorio .$_POST[id]."_boleto".substr($arq['name'],-4);
		
		$r = @move_uploaded_file($arq['tmp_name'], $nome);
		if( $r == 1 ) {
			$boleto_autoriza = $nome;
		}
	} 
	

	
	
	$campos=array(movi_tx_tipo,movi_nb_centrocusto,movi_nb_planoconta,movi_nb_ref,movi_tx_data,movi_tx_valordoc,
			movi_tx_notafiscal,movi_tx_parcelas,movi_tx_status,movi_tx_documento,movi_tx_arquivo,movi_nb_compra);
	$valores=array(Saída,$_POST[centro],$_POST[planoconta],$a_compra[comp_nb_entidade],gera_data("hoje",1),valor($_POST[valorNf]),
			$_POST[numeroNf],$parcelas,ativo,$_POST[documento],basename($nota_autoriza),$_POST[id]);
	
	inserir('movimento',$campos,$valores,1);
	
	$movi=ultimo_reg('movimento');
	$parcelas2=$parcelas;
	$parcelas = 0;
	
	
	for($j=0; $j!=$t_boleto; $j++){
	
		$valor_vez = valor($valor_boleto[$j]);
		$venc_vez = gera_data($venc_boleto[$j],1);
		$obs_vez = $obs_boleto[$j];
	
		if( $valor_vez=='0'  || $venc_vez=='' || $venc_vez == '0000-00-00')
			continue;
		
		if( $_POST[numeroNf] != '' )
		$obs_vez1 = " NF: $_POST[numeroNf] ";
		
		if( $valor_vez!='0'  || $venc_vez!='' || $venc_vez != '0000-00-00')
			$parcela_obs_vez;
		
	
		$obs_vez2 = (++$parcela_obs)."/".$parcelas2."  "; 
		
		if($baixa[$j]==''){
			$campos=array(bole_nb_movimento,bole_tx_previsao,bole_tx_vencimento,bole_tx_parcela,bole_tx_status,bole_tx_obs,bole_tx_valordoc,bole_tx_dataCadastro,bole_nb_userCadastro);
			$valores=array($movi,$venc_vez,$venc_vez,++$parcelas,ativo,$obs_vez2.$obs_vez.$obs_vez1,$valor_vez,gera_data("hoje",1),$_SESSION[user_nb_id]);
			inserir('boleto',$campos,$valores,1);
			unset($obs_vez1,$obs_vez2);
		}else{
			$campos=array(bole_nb_movimento,bole_tx_previsao,bole_tx_vencimento,bole_tx_parcela,bole_tx_status,bole_tx_obs,bole_tx_valordoc,bole_tx_dataCadastro,bole_nb_userCadastro,bole_tx_valor,bole_tx_data);
			$valores=array($movi,$venc_vez,$venc_vez,++$parcelas,encerrado,$obs_vez2.$obs_vez.$obs_vez1,$valor_vez,gera_data("hoje",1),$_SESSION[user_nb_id],$valor_vez,$venc_vez);
			inserir('boleto',$campos,$valores,1);
			
			$ultimo_boleto=ultimo_reg('boleto');
			
			$valores2=array($ultimo_boleto,1,$valor_vez,$venc_vez,ativo,$_POST[planoconta]);
			$campos2=array(fobo_nb_boleto,fobo_nb_forma,fobo_tx_valor,fobo_tx_data,fobo_tx_status,fobo_nb_planoconta);
			inserir('fobo',$campos2,$valores2,1);
			
			unset($obs_vez1,$obs_vez2);
		
		
		}
	}
	

	$sql = selecionar('listacompra','list_nb_compra,list_tx_status',"$_POST[id],ativo"," AND list_tx_recebido > 0 ");
	while( $a = carrega_array($sql) ) {
		
		$t_recebido+=$a[list_tx_recebido];
		$t_qtde+=$a[list_tx_qtde];

		$campos=array(list_tx_status);
		$valores=array('encerrado');
		atualizar('listacompra',$campos,$valores,$a[0]);

		// $CAMPO_QTDE = "prod_tx_qtde";
		// query("UPDATE produto SET ".$CAMPO_QTDE."=".$CAMPO_QTDE."+".$a[list_tx_recebido]." WHERE prod_nb_id='$a[list_nb_produto]' ");		
	}

	if ( $a_compra[comp_tx_opcaoFinanceiro]=='Sim' && $a_compra[comp_tx_opcaoEstoque]=='Não' && $a_compra[comp_tx_status]=='Autorizado' ) {
		// ESSE IF SERVE PARA VIER DA REQUISIÇÃO MANUAL
		$status_comp="Autorizado";

	}else if($t_recebido != $t_qtde){
		$status_comp="Pendente";

	} else {
		$status_comp="Finalizado";
	}
	

	if ( $a_compra[comp_tx_numNota]!='' ) {
		$n_nota = $a_compra[comp_tx_numNota];
	} else {
		$n_nota = $_POST[numeroNf];
	}

	$campos=array(comp_tx_status,comp_tx_dataFinaliza,comp_nb_userFinaliza,comp_tx_notaAutoriza,comp_tx_boletoAutoriza,comp_nb_movimento,comp_tx_obsFinaliza,comp_tx_numNota);
	$valores=array($status_comp,date("Y-m-d H:i:s"),$_SESSION[user_nb_id],$nota_autoriza,$boleto_autoriza,$movi,$_POST[obs_finaliza],$n_nota);
	atualizar('compra',$campos,$valores,$_POST[id]);
	
	
	$_POST[boleto]=$ultimo_boleto;
	
	if($_POST[frete]=='Sim'){
		$_POST[id] = $_POST[id];
		layout_frete();
		exit;
	}
	if($_POST[adicionar]=='Não'){
		set_status('Compra finalizada com sucesso!');

		if ( trim($_POST[volta_pagina])!='' ) {
			// SE FOR PARA REDIRECIONAR PARA UMA PÁGINA ESPECÍFICA
			chamar_pag($_POST[volta_pagina],'msg_status',"Compra finalizada com sucesso!");
			exit;
		} else {
			index();
		}
		
	}else{
		set_status('Nota Fiscal Adicionado!');
		layout_finaliza_original();
	
	}
	exit;
	
	

	
}


function layout_frete(){

	cabecalho('',2);
	
	cactux::abre_form('upload');
	
	$sql = selecionar('movimento,compra.entidade','movi_tx_notafiscal,movi_tx_status,enti_nb_id',"$_POST[numeroNf],ativo,.comp_nb_entidade");
	$a = carrega_array($sql);
	
	$t[] = cactux::texto('Compra:',$a[comp_nb_id],2);
	$t[] = cactux::texto('Entidade:',$a[enti_tx_nome],3);
	$t[] = cactux::texto('Data Autorização:',data($a[comp_tx_dataAutoriza],1),3);
	$t[] = cactux::texto('Situação:',$a[comp_tx_status],2);
	
	
	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($t[0],$t[1],$t[2],$t[3]);
	cactux::fecha_fieldset();
	echo"<br>";
	
	$c[] = cactux::combo_net('Transportadora:','nome',$_POST[busca_nome],$_POST[nome_busca_nome],5,array('../compra/busca_div.php?c=entidade','../compra/busca_net.php?c=entidade'));
	$c[]=cactux::campo('Nota Fiscal:','nf','',2);
	$c[] = cactux::campo_arquivo('NF Digitalizado:','arquivo_frete',3);
	$c[]=cactux::campo('Vencimento:','data','',2, MASCARA_DATA);
	$c[]=cactux::campo('Valor:','valor','',2, MASCARA_VALOR);
	//$c[]=cactux::combo('Opção de Baixa:','baixa2',array('','Baixar'),'',2);
	
	$voltar=cactux::botao('Voltar',2,'voltar');
	$gravar=cactux::botao_submit('Gravar',2,'gravar_frete','id,volta_pagina',"$_POST[id],$_POST[volta_pagina]");
	
	
	cactux::abre_fieldset('Dados do Frete');
	cactux::linha_fieldset($c[0],$c[1],$c[2]);
	cactux::linha_fieldset($c[3],$c[4],$c[5]);
	cactux::linha_fieldset($voltar,$gravar);
	cactux::fecha_fieldset();
	
	
	cactux::fecha_form();

	cactux::acao_botao('voltar','index','volta_pagina',"$_POST[volta_pagina]");

}


function gravar_frete(){

	global $CACTUX_CONF;

	$valor_boleto=$_POST[valor_boleto];
	$obs_boleto=$_POST[obs_boleto];
	$venc_boleto=$_POST[venc_boleto];
	$baixa=$_POST[baixa_boleto];
	
	$a_compra=carregar('compra,movimento',$_POST[id]);
	
	$_POST[centro]=$a_compra[movi_nb_centrocusto];
	$_POST[planoconta]=$a_compra[movi_nb_planoconta];
	$_POST[documento]=$a_compra[movi_tx_documento];
	
	$boleto=carregar('boleto','','bole_nb_movimento',"$a_compra[movi_nb_id]");
	
	
	$anexo=$_FILES[arquivo_frete];
	
	
	// $diretorio = $_SERVER[DOCUMENT_ROOT] . $CACTUX_CONF['path'] . "arquivos/financeiro/";
	// $arq = isset($_FILES['arquivo_frete']) ? $_FILES['arquivo_frete'] : FALSE; 
	// if( $arq ) {
		
	// 	$nome = $diretorio . $_POST[id]."_notafiscal_frete".substr($arq['name'],-4);
		
	// 	$r = @move_uploaded_file($arq['tmp_name'], $nome);
	// 	if( $r == 1 ) {
	// 		$nota_autoriza = $nome;
	// 	} 
		
	// }


	
		
	//DADOS DA TABELA ANEXO
	$campos = array(anex_tx_nome, anex_nb_movimento, anex_tx_tipo,anex_tx_status);
	$valores = array("Nota fiscal do frete referente a compra $_POST[id]",$a_compra[movi_nb_id],'compra',ativo);
	
	
	//INSERIR
	$campos = array_merge($campos,array(anex_nb_userCadastro, anex_tx_dataCadastro));
	$valores = array_merge($valores,array($_SESSION[user_nb_id],date("Y-m-d H:i:s")));
	inserir('anexo',$campos,$valores,1);
	$_POST[id_anexo]=ultimo_reg('anexo');
	

	// $_POST[titulo]=ereg_replace("[^a-zA-Z0-9_]", "", strtr($_POST[titulo], "áàãâéêíóôõúüçÁÀÃÂÉÊÍÓÔÕÚÜÇ ", "aaaaeeiooouucAAAAEEIOOOUUC_"));
	// $_POST[titulo]=str_replace(" ", "_", $_POST[titulo]);
	//$_POST[titulo]=substr($_POST[titulo],0,-3);
	$_POST[titulo]="Frete";
		
	//GUARDAR O ANEXO
	if( $anexo[name] != '') {
		// CRIA O DIRETÓRIO PARA GUARDAR OS ANEXOS DA COMPRA, ATRAVÉS DO ID DO MOVIMENTO
		//@mkdir("$_SERVER[DOCUMENT_ROOT]/$CACTUX_CONF[path]/arquivos/anexos/$a_compra[movi_nb_id]");
		
		//GUARDA O ARQUIVO DENTRO DA PASTA DO ID DO MOVIMENTO, SALVA COM O NOME DO TÍTULO E O ID DO MOVIMENTO
		$msg = enviar('arquivo_frete',$CACTUX_CONF[path].'/arquivos/anexos/'.$a_compra[movi_nb_id].'-'.$_POST[titulo],1); 
		
		set_status('Anexo Cadastrado com Sucesso!');
		
		// GUARDA O NOME DO ARQUIVO ORIGINAL NA TAVELA ANEXO
		if( !bd_erro($msg) ) {
			$envia_campos = 'anex_tx_arquivo';		
			$envia_valores = basename($msg);
			atualizar('anexo',$envia_campos,$envia_valores,$_POST[id_anexo]);
		}
	}


	
	
	
	$campos=array(movi_tx_tipo,movi_nb_centrocusto,movi_nb_planoconta,movi_nb_ref,movi_tx_data,movi_tx_valordoc,
			movi_tx_notafiscal,movi_tx_parcelas,movi_tx_status,movi_tx_documento,movi_tx_arquivo,movi_nb_compra);
	$valores=array(Saída,$_POST[centro],$_POST[planoconta],$_POST[nome],gera_data("hoje",1),valor($_POST[valor]),
			$_POST[nf],1,ativo,$_POST[documento],basename($nota_autoriza),$_POST[id]);
	
	inserir('movimento',$campos,$valores,1);
	
	$movi=ultimo_reg('movimento');

	
	if($_POST[baixa2]==''){
			$campos=array(bole_nb_movimento,bole_tx_previsao,bole_tx_vencimento,bole_tx_parcela,bole_tx_status,bole_tx_obs,bole_tx_valordoc,bole_tx_dataCadastro,bole_nb_userCadastro);
			$valores=array($movi,gera_data($_POST[data],1),gera_data($_POST[data],1),++$parcelas,ativo,"Nf:$_POST[nf]-Pagamento de frete referênte ao boleto $boleto[bolenb_id]",valor($_POST[valor],1),gera_data("hoje",1),$_SESSION[user_nb_id]);
			inserir('boleto',$campos,$valores,1);
			unset($obs_vez1,$obs_vez2);
		}else{
			$campos=array(bole_nb_movimento,bole_tx_previsao,bole_tx_vencimento,bole_tx_parcela,bole_tx_status,bole_tx_obs,bole_tx_valordoc,bole_tx_dataCadastro,bole_nb_userCadastro,bole_tx_valor,bole_tx_data);
			$valores=array($movi,gera_data($_POST[data],1),gera_data($_POST[data],1),++$parcelas,encerrado,"Nf:$_POST[nf]-Pagamento de frete referênte ao boleto $boleto[bole_nb_id]",valor($_POST[valor],1),gera_data("hoje",1),$_SESSION[user_nb_id],valor($_POST[valor],1),gera_data($_POST[data],1));
			inserir('boleto',$campos,$valores,1);
			
			$ultimo_boleto=ultimo_reg('boleto');
			
			$valores2=array($ultimo_boleto,1,valor($_POST[valor],1),gera_data($_POST[data],1),ativo,$_POST[planoconta]);
			$campos2=array(fobo_nb_boleto,fobo_nb_forma,fobo_tx_valor,fobo_tx_data,fobo_tx_status,fobo_nb_planoconta);
			inserir('fobo',$campos2,$valores2,1);
			
			unset($obs_vez1,$obs_vez2);
		
		
		}
		
		index();
		exit;



}



function remover_movimento(){




	$a_movimento=carregar('boleto,movimento',$_POST[id]);
	
	remover('movimento',$a_movimento[bole_nb_movimento]);
	remover('boleto',$_POST[id]);
	
	$_POST[id]=$a_movimento[movi_nb_compra];
	
	layout_finaliza_original();
	exit;




}


function layout_finaliza_original() {
	global $a_mod;
	
	if($_POST[id]==''){
		$id=ids_agrupados($_POST[ids_agrupados]);
		$_POST[id]=$id[0];
	}
	
	$a_comp = carregar('compra,setor,entidade.user',$_POST[id],"comp_nb_userCadastro",".user_nb_id");
	$a_auto = carregar('user',$a_comp[comp_nb_userGestor]);
	$a_movimento=carregar('movimento',$a_comp[comp_nb_movimento]);
	
	$a_plano = carregar('planoconta',$a_comp[enti_nb_planoconta]);
	

	// SE O NÚMERO DA NOTA JÁ ESTIVER SIDO INFORMADA NA IMPORTAÇÃO, UTILIZA ESSE NÚMERO
	if ( $a_comp[comp_tx_numNota]!='' ) {
		$n_nota_fiscal = $a_comp[comp_tx_numNota];
	} else {
		$n_nota_fiscal = '';
	}
	

	
	cabecalho('Financeiro de Compra',2);
	
//	frame_interno(1);
	
	cactux::abre_form('upload');
	
	$t1[] = cactux::texto('Código:',zeros($a_comp[comp_nb_id],3),2);
	$t1[] = cactux::texto('Setor:',$a_comp[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comp[user_tx_nome],4);
	

	$t2[] = cactux::texto('Fornecedor:',$a_comp[enti_tx_nome],4);
	$t2[] = cactux::texto('Descrição:',$a_comp[comp_tx_obsCadastro],4);
//	$t2[] = cactux::texto('Valor:',mostra_valor($a_comp[comp_tx_valor],1),2);

	$t3[] = cactux::texto('Situação:',$a_comp[comp_tx_status],2);
	$t3[] = cactux::texto('Autorizado Por:',$a_auto[user_tx_nome],2);
	$t3[] = cactux::texto('Observação:',$a_comp[comp_tx_obsAutoriza],4);
	$t3[] = cactux::texto('Arquivo:',"",2);
	
	$c[] = cactux::campo('Número NF:','numeroNf',$n_nota_fiscal,2," onblur=valida_notafiscal(this.value,".$a_comp[enti_nb_id].") ");
	$c[] = cactux::campo('Valor NF:','valorNf','',2,MASCARA_VALOR);
	$c[] = cactux::combo_bd('Centro de Custo:','centro',$a_centro[cent_nb_id],$a_centro[cent_tx_nome],3,'centrocusto','',".nome");
	//$c[] = cactux::combo_net('Plano Conta:','planoconta',$a_plano[plan_nb_id],$a_plano[plan_tx_nome],3,array("busca_div.php?c=planoconta","busca_net.php?c=planoconta"));
	$c[] = cactux::combo_bd('!Plano Conta:','planoconta',$a_plano[plan_nb_id],$a_plano[plan_tx_nome],3,'planoconta');
	$c[] = cactux::textarea('Descrição:','obs_finaliza',$a_comp[comp_tx_obsFinaliza],10,3);
	
	$c[] = cactux::campo_arquivo('NF Digitalizado:','arquivo1',5);
	//$c[] = cactux::campo_arquivo('Boletos Digitalizados:','arquivo2',5);
	// $c[]=cactux::combo('Documento:','documento',array('','Carteira','Boleto','Transferência'),$a_movimento[movi_tx_documento],2);
	$c[]=cactux::combo('Adicionar Nota Fiscal:','adicionar',array('Não','Sim'),$a_movimento[movi_nb_compra],3);
	$frete=cactux::combo('Frete:','frete',array('Não','Sim'),'',2);
	
	//$c4[] = cactux::combo_bd('Plano Conta:','planoconta',$a_plano[0],$a_plano[1],3,'planoconta','',".nome");
	

	
	cactux::abre_fieldset('Informações da Finalização');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0],$t2[1],$t2[2]);
//	cactux::linha_fieldset($t3[0],$t3[1],$t3[2],$t3[3]);
	
	cactux::linha_fieldset($c[0],$c[1],$c[2],$c[3]);
	cactux::linha_fieldset($c[4]);
	cactux::linha_fieldset($c[5],$c[6],$c[7],$frete);

	for($i=0; $i!=24; $i++) {
		
		$c1 = cactux::campo('Vencimento Boleto:','venc_boleto[]','',2, MASCARA_DATA." onFocus=abre_proximo('div_boleto_',".($i+1).")");
		$c2 = cactux::campo('Valor Boleto:','valor_boleto[]','',2,MASCARA_VALOR." onFocus=abre_proximo('div_boleto_',".($i+1).")");
		$c3 = cactux::campo('Descrição Boleto:','obs_boleto[]','',6," onFocus=abre_proximo('div_boleto_',".($i+1).")");
		//$c4 = cactux::combo('Opção de Baixa:','baixa_boleto[]',array('','Baixar'),'',2," onFocus=abre_proximo('div_boleto_',".($i+1).")");
		
		
		if( $i == 0 )	$display='block';	else	$display='none';

		echo "<div id=div_boleto_".$i." style='display:$display'>";
		cactux::linha_fieldset($c1,$c2,$c3,$c4);		
		echo "</div>";
		
	}

	$finaliza=cactux::botao_submit('Gravar',2,'cadastra_finaliza','id,volta_pagina',"$_POST[id],$_POST[volta_pagina]");
	$voltar=cactux::botao('Voltar',2,'voltar');
	$status = cactux::msg_status();

	cactux::fecha_fieldset();
	

	
	cactux::linha_fieldset($voltar,$finaliza,$status);

	
	
	$cabeca[] = array('','PRODUTO','UNIDADE','QUANTIDADE','VALOR UN.','VALOR');
	$cabeca[] = 'c,e,c,d,d,d';
	$cabeca[] = '5%,,10%,10%,10%,10%,10%';

	$sql=selecionar('listacompra,compra,produto','list_nb_compra,list_tx_status',"$_POST[id],!inativo"," ORDER BY prod_tx_nome,list_nb_id");
	while( $a=carrega_array($sql) ) {
		
		$valor = $a[list_tx_valor]*$a[list_tx_qtde];
		$valor_total += $valor;
		
		
		$valores[] = array(++$j,$a[prod_tx_nome],$a[list_tx_unidade],mostra_valor($a[list_tx_qtde],1),mostra_valor($a[list_tx_valor],1),mostra_valor($valor));
		
	}
	if(mostra_valor($a_comp[comp_tx_valor],1) != mostra_valor($valor_total,1))
		$valores[]=array('','','','','<B>SUB-TOTAL:','<B>'.mostra_valor($valor_total,1));
	
	
	$valores[]=array('','','','','<B>TOTAL:','<B>'.mostra_valor($a_comp[comp_tx_valor],1));
	
	grid::gerar($cabeca,$valores);



	cactux::fecha_form();
	if ( trim($_POST[volta_pagina])!='' ) {
		// SE TIVER QUE RETORNAR PARA UMA PÁGINA ESPECÍFICA
		cactux::acao_botao('voltar','index','','',$_POST[volta_pagina]);
	} else {
		cactux::acao_botao('voltar','index');
	}
	// cactux::acao_botao('voltar','layout_recebimento_produto','id',"$_POST[id]");


	// ------------------------------------------------------------
	// GRID COM AS NOTAS FISCAIS (MOVIMENTO) CADASTRADAS
	// ------------------------------------------------------------
	$sql_movimento=selecionar('boleto,movimento','movi_tx_status',"ativo"," AND movi_nb_compra='$_POST[id]' GROUP BY movi_nb_id");
	if( num_linhas($sql_movimento) > 0 ) {
	
		while( $a_mov = carrega_array($sql_movimento) ) {
		
			$total_valores_mov += $a_mov[movi_tx_valordoc];
			$remover_mov=".icone_excluir($a_mov[bole_nb_id],remover_movimento);";
		
			$valores2[]=array($a_mov[bole_nb_id],$a_mov[movi_tx_notafiscal],mostra_valor($a_mov[movi_tx_valordoc]),$remover_mov);
		
		}
		
		$valores2[]=array('','<b>TOTAL:</b>',"<b>".mostra_valor($total_valores_mov),'');
		
		$cabeca2[] = array('','NOTA FISCAL','VALOR','');
		$cabeca2[] = 'e,e,e,e';
		$cabeca2[] = '5%,40%,,2%';
		$cabeca2[] = '50%';
	
		
		grid::gerar($cabeca2,$valores2);
		
	}



	javascript("

	function abre_proximo(nome,id_proximo) {

		document.getElementById(nome+id_proximo).style.display='block';	
		
	}
	
	
	function valida_notafiscal(nf,entidade) {

		if( nf != '' && nf != ' ' )
			frame_interno('requisicao.php?".cactux_cookie::url_sistema()."&acao=verifica_notafiscal&nf='+nf+'&enti='+entidade);
		
	}
	

	");
	
	rodape();
	
}




/*
function layout_recebimento_produto() {
	global $a_mod;
	
	
	$a_comp = carregar('compra,setor,entidade.user',$_POST[id],"comp_nb_userCadastro",".user_nb_id");
	$a_auto = carregar('user',$a_comp[comp_nb_userGestor]);
	$a_movimento=carregar('movimento',$a_comp[comp_nb_movimento]);
	
	$a_plano = carregar('planoconta',$a_comp[enti_nb_planoconta]);
	$a_centro= carregar('centrocusto',$a_comp[enti_nb_centrocusto]);
	

	
	cabecalho('Financeiro de Compra',2);
	
//	frame_interno(1);
	
	cactux::abre_form();
	
	$t1[] = cactux::texto('Código:',zeros($a_comp[comp_nb_id],3),2);
	$t1[] = cactux::texto('Setor:',$a_comp[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comp[user_tx_nome],4);
	

	$t2[] = cactux::texto('Fornecedor:',$a_comp[enti_tx_nome],4);
	$t2[] = cactux::texto('Descrição:',$a_comp[comp_tx_obsCadastro],4);
//	$t2[] = cactux::texto('Valor:',mostra_valor($a_comp[comp_tx_valor],1),2);

	$t3[] = cactux::texto('Situação:',$a_comp[comp_tx_status],2);
	$t3[] = cactux::texto('Autorizado Por:',$a_auto[user_tx_nome],2);
	$t3[] = cactux::texto('Observação:',$a_comp[comp_tx_obsAutoriza],4);
	$t3[] = cactux::texto('Arquivo:',"",2);
	

	
	cactux::abre_fieldset('Informações da Finalização');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0],$t2[1],$t2[2]);
//	cactux::linha_fieldset($t3[0],$t3[1],$t3[2],$t3[3]);

	$finaliza=cactux::botao_submit('Avançar',2,'cadastra_recebimento_produto','id',"$_POST[id]");
	$voltar=cactux::botao('Voltar',2,'voltar');
	$status = cactux::msg_status();

	cactux::fecha_fieldset();
	

	
	cactux::linha_fieldset($voltar,$finaliza,$status);

	
	
	$cabeca[] = array('','PRODUTO','UNIDADE','QUANTIDADE','QTDE RECEBIDA','VALOR UN.','VALOR');
	$cabeca[] = 'c,e,c,d,d,d';
	$cabeca[] = '5%,,10%,10%,10%,10%,10%';

	$sql=selecionar('listacompra,compra,produto','list_nb_compra,list_tx_status',"$_POST[id],ativo"," ORDER BY prod_tx_nome,list_nb_id");
	while( $a=carrega_array($sql) ) {
		
		
		if( $a[list_tx_recebido] > 0 ){
			$qtde = $a[list_tx_recebido];
			$valor = $a[list_tx_valor]*$a[list_tx_qtde];
		}
		else{
			$valor = $a[list_tx_valor]*$a[list_tx_qtde];
			$qtde = $a[list_tx_qtde];
		}
		
		$valor_total += $valor;

		$campo = "<input type=text name=qtde_recebida[] value='".mostra_valor($qtde,1)."' style='width:100%; text-align:right;' ".MASCARA_VALOR.">
		<input type=hidden name=id_lista_recebida[] value='$a[list_nb_id]'><input type=hidden name=id_prod_recebida[] value='$a[list_nb_produto]'>";
		
		
		$valores[] = array(++$j,$a[prod_tx_nome],$a[list_tx_unidade],mostra_valor($a[list_tx_qtde],1),$campo,mostra_valor($a[list_tx_valor],1),mostra_valor($valor));
		
	}
	if(mostra_valor($a_comp[comp_tx_valor],1) != mostra_valor($valor_total,1))
		$valores[]=array('','','','','','<B>SUB-TOTAL:','<B>'.mostra_valor($valor_total,1));
	
	
	$valores[]=array('','','','','','<B>TOTAL:','<B>'.mostra_valor($a_comp[comp_tx_valor],1));
	
	grid::gerar($cabeca,$valores);



	cactux::fecha_form();
	cactux::acao_botao('voltar','index');


	rodape();
	
}
*/



function layout_finaliza() {
	global $a_mod;
		



// echo "qwrqwrqwer";
	$IDS_MOV = ids_agrupados($_POST[ids_agrupados]);
	
	$t_ids=count($IDS_MOV);
	
	cabecalho('Financeiro de Compra',2);
	
	cactux::abre_form('upload');
	
		
		
	cactux::abre_fieldset('Informações da Finalização');
	
	for($y=0;$y!=$t_ids;$y++){
	
	campo_hidden('IDS_MOV[]',$IDS_MOV[$y]);
		
		
		if($y==0)
			$extra.=" list_nb_compra='$IDS_MOV[$y]'";
		else
			$extra.=" OR list_nb_compra='$IDS_MOV[$y]'";
		
		$a_comp = carregar('compra,setor,entidade.user',$IDS_MOV[$y],"comp_nb_userCadastro",".user_nb_id");
		$a_auto = carregar('user',$a_comp[comp_nb_userGestor]);
		$a_movimento=carregar('movimento',$a_comp[comp_nb_movimento]);
		
		$a_plano = carregar('planoconta',$a_comp[enti_nb_planoconta]);
		$a_centro= carregar('centrocusto',$a_comp[enti_nb_centrocusto]);
		
		
		$t11 = cactux::texto('Código:',zeros($a_comp[comp_nb_id],3),1);
		$t12 = cactux::texto('Data:',data($a_comp[comp_tx_dataCadastro],1),1);
		$t13 = cactux::texto('Descrição:',$a_comp[comp_tx_obsCadastro],3);
		$t15 = cactux::texto('Observação:',$a_comp[comp_tx_obsAutoriza],4);
//		$t14 = cactux::texto('Situação:',$a_comp[comp_tx_status],1);
		$t14 = cactux::texto('Valor:',mostra_valor($a_comp[comp_tx_valor],1),1);
		
		cactux::linha_fieldset($t11,$t12,$t13,$t15,$t14);
		
	}

	
	
	
	$t2[] = cactux::texto('Setor:',$a_comp[seto_tx_nome],2);
	$t2[] = cactux::texto('Comprador:',$a_comp[user_tx_nome],4);
	$t2[] = cactux::texto('Fornecedor:',$a_comp[enti_tx_nome],4);
//	$t2[] = cactux::texto('Valor:',mostra_valor($a_comp[comp_tx_valor],1),2);

	$t2[] = cactux::texto('Autorizado Por:',$a_auto[user_tx_nome],2);
	$t2[] = cactux::texto('Arquivo:',"",2);
	
	$c[] = cactux::campo('Número NF:','numeroNf','',2," onblur=valida_notafiscal(this.value,".$a_comp[enti_nb_id].") ");
	$c[] = cactux::campo('Valor NF:','valorNf','',2,MASCARA_VALOR);
	$c[] = cactux::combo_bd('Centro de Custo:','centro',$a_centro[cent_nb_id],$a_centro[cent_tx_nome],3,'centrocusto','',".nome");
	$c[] = cactux::combo_net('Plano Conta:','planoconta',$a_plano[plan_nb_id],$a_plano[plan_tx_nome],3,array("busca_div.php?c=planoconta","busca_net.php?c=planoconta"));
	$c[] = cactux::textarea('Descrição:','obs_finaliza',$a_comp[comp_tx_obsFinaliza],10,3);
	
	$c[] = cactux::campo_arquivo('NF Digitalizado:','arquivo1',6);
	//$c[] = cactux::campo_arquivo('Boletos Digitalizados:','arquivo2',5);
	// $c[]=cactux::combo('Documento:','documento',array('','Carteira','Boleto','Transferência'),$a_movimento[movi_tx_documento],2);
	$c[]=cactux::combo('Adicionar Nota Fiscal:','adicionar',array('','Adicionar Nota Fiscal'),$a_movimento[movi_nb_compra],4);
	
	//$c4[] = cactux::combo_bd('Plano Conta:','planoconta',$a_plano[0],$a_plano[1],3,'planoconta','',".nome");
	

	
	
	cactux::linha_fieldset($t2[0],$t2[1],$t2[2]);
	cactux::linha_fieldset($t2[3],$t2[4]);
	
	cactux::linha_fieldset($c[0],$c[1],$c[2],$c[3]);
	cactux::linha_fieldset($c[4]);
	cactux::linha_fieldset($c[5],$c[6],$c[7]);

	for($i=0; $i!=24; $i++) {
		
		$c1 = cactux::campo('Vencimento Boleto:','venc_boleto[]','',2, MASCARA_DATA." onFocus=abre_proximo('div_boleto_',".($i+1).")");
		$c2 = cactux::campo('Valor Boleto:','valor_boleto[]','',2,MASCARA_VALOR." onFocus=abre_proximo('div_boleto_',".($i+1).")");
		$c3 = cactux::campo('Descrição Boleto:','obs_boleto[]','',5," onFocus=abre_proximo('div_boleto_',".($i+1).")");
		
		
		if( $i == 0 )	$display='block';	else	$display='none';

		echo "<div id=div_boleto_".$i." style='display:$display'>";
		cactux::linha_fieldset($c1,$c2,$c3);		
		echo "</div>";
		
	}

	$finaliza=cactux::botao_submit('Gravar',2,'cadastra_finaliza_agrupado','id,ids_agrupados',"$_POST[id],$_POST[ids_agrupados]");
	$voltar=cactux::botao('Voltar',2,'voltar');

	$status = cactux::msg_status();

	cactux::fecha_fieldset();
	

	
	cactux::linha_fieldset($voltar,$finaliza,$status);

	cactux::fecha_form();
	cactux::acao_botao('voltar','index');
	
	
	// ------------------------------------------------------------
	// GRID COM AS NOTAS FISCAIS (MOVIMENTO) CADASTRADAS
	// ------------------------------------------------------------
	$extra_id = implode(",",$IDS_MOV);
	$sql_movimento=selecionar('boleto,movimento','movi_tx_status',"ativo"," AND movi_nb_compra IN ('$extra_id') GROUP BY movi_nb_id");
	if( num_linhas($sql_movimento) > 0 ) {
	
		while( $a_mov = carrega_array($sql_movimento) ) {
		
			$total_valores_mov += $a_mov[movi_tx_valordoc];
			$remover_mov=".icone_excluir($a_mov[bole_nb_id],remover_movimento);";
		
			$valores2[]=array($a_mov[bole_nb_id],$a_mov[movi_tx_notafiscal],mostra_valor($a_mov[movi_tx_valordoc]),$remover_mov);
		
		}
		
		$valores2[]=array('','<b>TOTAL:</b>',"<b>".mostra_valor($total_valores_mov),'');
		
		$cabeca2[] = array('','NOTA FISCAL','VALOR','');
		$cabeca2[] = 'e,e,e,e';
		$cabeca2[] = '5%,40%,,2%';
		$cabeca2[] = '50%';
	
		
		grid::gerar($cabeca2,$valores2);
		
	}
	
	
	
	
	$cabeca[] = array('','PRODUTO','QUANTIDADE','VALOR UN.','VALOR');
	$cabeca[] = 'c,e,d,d,d';
	$cabeca[] = '5%,,10%,10%,10%';

	$sql=selecionar('listacompra,compra,produto','list_tx_status',"ativo"," AND ( $extra ) ORDER BY prod_tx_nome,list_nb_id",0);
	while( $a=carrega_array($sql) ) {
		
		$valor = $a[list_tx_valor]*$a[list_tx_qtde];
		$valor_total += $valor;
		
		$valores[] = array(++$j,$a[prod_tx_nome],mostra_valor($a[list_tx_qtde],1),mostra_valor($a[list_tx_valor],1),mostra_valor($valor));
		
	}
	//if(mostra_valor($a_comp[comp_tx_valor],1) != mostra_valor($valor_total,1))
	//	$valores[]=array('','','','<B>SUB-TOTAL:','<B>'.mostra_valor($valor_total,1));
	
	
	$valores[]=array('','','','<B>TOTAL:','<B>'.mostra_valor($valor_total,1));
	
	grid::gerar($cabeca,$valores);



	javascript("
	
	function abre_proximo(nome,id_proximo) {

		document.getElementById(nome+id_proximo).style.display='block';	
		
	}


	
	function valida_notafiscal(nf,entidade) {

		if( nf != '' && nf != ' ' )
			frame_interno('requisicao.php?".cactux_cookie::url_sistema()."&acao=verifica_notafiscal&nf='+nf+'&enti='+entidade);
		
	}
	
	
	
	");
	
	rodape();
	
}


function layout_compra() {
	global $a_mod;
	
	

	cabecalho('Financeiro de Compra',2);

	cactux::abre_form();
	if($_SESSION[user_tx_nivel]!="Comprador" || $_SESSION[user_tx_nivel]!="Informatica")
		$c[] = cactux::combo_bd('!Setor:','setor',$a_mod[seto_nb_id],$a_mod[seto_tx_nome],3,'setor','',"1  ORDER BY seto_tx_nome");
	else{
		$c[] = cactux::combo_bd('Setor:','setor',$a_mod[seto_nb_id],$a_mod[seto_tx_nome],3,'setor',''," 1 AND seto_nb_id=$_SESSION[user_nb_setor]");
	}
	$c[] = cactux::combo_net('Fornecedor:','fornecedor',$a_mod[enti_nb_id],$a_mod[enti_tx_nome],5,array('busca_div.php?c=fornecedor','busca_net.php?c=fornecedor'));
//	$c[] = cactux::campo('Valor Total:','valor',mostra_valor($a_mod[comp_tx_valor]),2, MASCARA_VALOR);
	$c[] = cactux::campo('Data:','data',date("d/m/Y"),2, "disabled=disabled");
	
	$c1[] = cactux::textarea('Descrição/Forma de Pagamento:','obs',$a_mod[comp_tx_obsCadastro],10,3);
	
	$avancar=cactux::botao_submit('Avançar',2,'cadastra_compra','id',$_POST[id]);
	$voltar=cactux::botao('Voltar',2,'voltar');
	$status=cactux::msg_status();
	
	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($c[0],$c[1],$c[2]);
	cactux::linha_fieldset($c1[0]);
	cactux::linha_fieldset($voltar,$avancar,$status);
	cactux::fecha_fieldset();
	
	cactux::fecha_form();
	
	cactux::acao_botao('voltar','index');
	
}




function layout_imprime(){

	$a_comp=carregar('compra,setor,entidade.user',$_POST[id],'',""," AND user_nb_id=comp_nb_userCadastro");
	
	if( $a_comp[comp_tx_status]!='Solicitado' && $a_comp[comp_tx_status]!='Negado' )
		cabecaRelatorioVenda('Autorização de Compra');
	else
		cabecaRelatorioVenda('Solicitação de Compra');
	
	
	cactux::fecha_form();
		
	$t1[] = cactux::texto('Código:',zeros($a_comp[comp_nb_id],3),2);
	$t1[] = cactux::texto('Setor:',$a_comp[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comp[user_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_comp[comp_tx_dataCadastro],1),2);

	$t2[] = cactux::texto('Fornecedor:',$a_comp[enti_tx_nome],4);
	$t2[] = cactux::texto('Descrição/Forma de Pagamento:',$a_comp[comp_tx_obsCadastro],4);
	
//	$t2[] = cactux::texto('Valor:',"R$ ".mostra_valor($a_comp[comp_tx_valor],1),2);

	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0],$t2[1],$t2[2]);
	cactux::fecha_fieldset();
	

	
	$cabecalho[]=array('PRODUTO','UNIDADE','QUANTIDADE','VALOR UNITÁRIO','VALOR TOTAL');
	$cabecalho[]='e,e,e,e,c,c,c';
	$cabecalho[]=',15%,15%,15%,15%';
	$cabecalho[]='98%';
	
	
	$sql = selecionar('listacompra,compra,produto','list_nb_compra,list_tx_status,list_tx_status',"$_POST[id],!inativo,!Negado");	
	while ( $a=carrega_array($sql) ) {
	
		$valor_total2+=($a[list_tx_valor]*$a[list_tx_qtde]);
		
		$valores[] = array( $a[prod_tx_nome], $a[list_tx_unidade], mostra_valor($a[list_tx_qtde]), "R$ ".mostra_valor($a[list_tx_valor]),
							"R$ ".mostra_valor($a[list_tx_valor]*$a[list_tx_qtde]) );
	
	}

	if( mostra_valor($a_comp[comp_tx_valor],1) != mostra_valor($valor_total2,1))
		$valores[]=array('','','','<B>SUB-TOTAL:',"R$ ".'<B>'.mostra_valor($valor_total2,1));

	
	$valores[] = array( '', '', '', '<B>TOTAL:', "R$ ".'<B>'.mostra_valor($a_comp[comp_tx_valor],1) );

	echo"<br>";
	grid::gerar($cabecalho,$valores);
	echo"<br>";
	
	if ( $a_comp[comp_tx_status]=="Autorizado" || $a_comp[comp_tx_status]=="Negado" ) {
		
		
		// $a_comp2 = carregar('compra,setor,entidade.user',$_POST[id],'',""," AND user_nb_id=comp_nb_userGestor");
		$sql_comp2 = selecionar('compra,setor,entidade.user','comp_nb_id',"$_POST[id]"," AND user_nb_id=comp_nb_userGestor LIMIT 1");
		$a_comp2 = carrega_array($sql_comp2);
		
		if($a_comp[comp_tx_status]=="Autorizado" )
			$t3[] = cactux::texto('Situação:','Autorizado por '.$a_comp2[user_tx_nome],4);
		else
			$t3[] = cactux::texto('Situação:','Negado por '.$a_comp2[user_tx_nome],4);
		
		$t3[] = cactux::texto('Data:',data($a_comp2[comp_tx_dataAutoriza],3),2);
		$t3[] = cactux::texto('Observação:',$a_comp2[comp_tx_obsAutoriza],4);
		
		cactux::abre_fieldset('Informações da Autorização');
		cactux::linha_fieldset($t3[0],$t3[1],$t3[2],$t3[3]);
		cactux::fecha_fieldset();
	}


	if ( $a_comp[comp_tx_status]=="Finalizado" ) {
		
		// $a_comp2=carregar('compra,setor,entidade.user',$_POST[id],'',""," AND user_nb_id=comp_nb_userGestor");
		$sql_comp2 = selecionar('compra,setor,entidade.user','comp_nb_id',"$_POST[id]"," AND user_nb_id=comp_nb_userGestor LIMIT 1");
		$a_comp2 = carrega_array($sql_comp2);
//		$a_comp2=carregar('compra,setor,entidade',$_POST[id]);
		
	
		$t3[] = cactux::texto('Situação:',' Autorizado por '.$a_comp2[user_tx_nome],4);
		$t3[] = cactux::texto('Data:',data($a_comp2[comp_tx_dataAutoriza],3),2);
		$t3[] = cactux::texto('Observação:',$a_comp2[comp_tx_obsAutoriza],3);
		
		cactux::abre_fieldset('Informações da Autorização');
		cactux::linha_fieldset($t3[0],$t3[1],$t3[2]);
		cactux::fecha_fieldset();
		
		$a_movi=carregar('movimento',$a_comp2[comp_nb_movimento]);
		
		if($a_comp2[comp_nb_userFinaliza]!='')
			$a_userfim=carregar('user',$a_comp2[comp_nb_userFinaliza]);
		
		$t4[] = cactux::texto('Situação:','Finalizado Por '.$a_userfim[user_tx_nome],4);
		$t4[] = cactux::texto('Data:',data($a_comp2[comp_tx_dataFinaliza],3),2);
		$t4[] = cactux::texto('Nota Fiscal:',$a_movi[movi_tx_notafiscal],2);
		//$t4[] = cactux::texto('Parcelas:',$a_movi[movi_tx_parcelas]);
		
		echo "<br>";
		
		cactux::abre_fieldset('Informações da Finalização');
		cactux::linha_fieldset($t4[0],$t4[1],$t4[2],$t4[3]);
		cactux::fecha_fieldset();
	}
	
	cactux::fecha_form();
	

	$comp = carregar('compra',$_POST[id]);
	
	//$sql2=selecionar('boleto,movimento',"bole_tx_status,movi_tx_status","!inativo,!inativo"," AND movi_nb_compra='$_POST[id]'",0);
	//$sql2=selecionar('boleto,movimento',"bole_tx_status,movi_tx_status","!inativo,!inativo"," AND movi_nb_id='$comp[comp_nb_movimento]'",0);

	// -----------------------------------------------------------------------------------------------
	// 
	// EM 18/11/2013 FOI ALTERADO A CONSULTA PARA PERMITIR QE SE EXIBA TODOS OS BOLETOS DESSE MOVIMENTO NA IMPRESSAO DA REQUISICAO
	// 
	// -----------------------------------------------------------------------------------------------
	$sql2 = selecionar('boleto,movimento',"bole_tx_status,movi_tx_status","!inativo,!inativo"," AND movi_nb_compra='$comp[comp_nb_id]'");
	if( num_linhas($sql2) > 0 ) {
	
		while ( $a2=carrega_array($sql2) ) {
			
			$valores2[] = array( $a2[bole_nb_id], $a2[bole_tx_parcela], data($a2[bole_tx_vencimento],1), mostra_valor($a2[bole_tx_valordoc]) );
		
		}
		
		$cabecalho2[] = array('BOLETO','PARCELA','VENCIMENTO','VALOR');
		$cabecalho2[] = 'c,c,e,e,e,e,c';
		$cabecalho2[] = '15%,15%,30%,';
		$cabecalho2[] = '30%';
		
		enter();
		
		echo "<div style='text-align:left; width:98%'>";
		
		grid::gerar($cabecalho2,$valores2);
		
		echo "</div>";
	}
	
}



function layout_imprimi_busca(){

	
	
	if($_SESSION[user_tx_nivel]=="Comprador" || $_SESSION[user_tx_nivel]=="Informatica"){
	
		$extra .=" AND comp_nb_userCadastro='$_SESSION[user_nb_id]'";	
	}


	// $extra .= " AND comp_tx_status IN('Autorizado','Finalizado','Recebido')";
	

	if( $_POST[busca_data1] )
		$extra .= " AND comp_tx_dataCadastro >= '".gera_data($_POST[busca_data1],1)." 00:00:00'";
	if( $_POST[busca_data2] )
		$extra .= " AND comp_tx_dataCadastro <= '".gera_data($_POST[busca_data2],1)." 23:59:59'";
	if( $_POST[busca_setor] != '1' && $_POST[busca_setor]!= '') {
		$extra .= " AND comp_nb_setor = '$_POST[busca_setor]'";
		$a_setor = carregar('setor',$_POST[busca_setor]);
	}
	if( $_POST[busca_fornecedor] ) {
		$extra .= " AND comp_nb_entidade = '$_POST[busca_fornecedor]'";
		$a_fornacedor = carregar('entidade',$_POST[busca_fornecedor]);
	}
	if( $_POST[busca_status] ) {

		if ( $_POST[busca_status] == 'Finalizado' )
			$extra .= " AND (comp_tx_status='Finalizado' OR comp_tx_status='Finalizado Pendente') ";
		elseif ( $_POST[busca_status] == 'Recebido' )
			$extra .= " AND (comp_tx_status='Recebido' OR comp_tx_status='Pendente') ";
		else
			$extra .= " AND comp_tx_status = '$_POST[busca_status]'";
	}


	cabecaRelatorioVenda('Financeiro de Compra',2);
	
	cactux::abre_form();
	
	//CAMPOS
	$c[] = cactux::texto('Data Inicial:',$_POST[busca_data1],1);
	$c[] = cactux::texto('Data Final:',$_POST[busca_data2],1);
	$c[] = cactux::texto('Setor:',$a_setor[seto_tx_nome],3);
	$c[] = cactux::texto('Fornecedor:',$a_fornacedor[enti_tx_nome],3);
	$c[] = cactux::texto('Situação:',$_POST[busca_status],1);
	
	//BOTOES
		
	cactux::abre_fieldset('Filtro de Busca');
	cactux::linha_fieldset($c[0],$c[1],$c[2],$c[3],$c[4]);
	cactux::fecha_fieldset();
	
	$sql=selecionar('compra,setor,entidade.user','comp_tx_status',"!inativo"," $extra AND user_nb_id=comp_nb_userCadastro ORDER BY comp_nb_id DESC");
	
	$cabecalho[]=array('CÓD','SETOR','FORNECEDOR','DATA','VALOR','SITUAÇÃO');
	$cabecalho[]='c,e,e,c,c,c';
	$cabecalho[]='5%,15%,,5%,6%,6%,2%,2%';
	$cabecalho[]='98%';
	
	while($a=carrega_array($sql)){


		// O FINALIZADO PENDENTE É EQUIVALENTE AO STATUS FINALIZADO
		if ( $a[comp_tx_status] == 'Finalizado Pendente' )
			$a[comp_tx_status] = 'Finalizado';

		// O STATUS PENDENTE É O MESMO QUE O STATUS RECEBIDO, SÓ QUE INTERNAMENTE ELE TEM QUE FICAR COM O STATUS PENDENTE
		if ( $a[comp_tx_status] == 'Pendente' )
			$a[comp_tx_status] = 'Recebido';


		
		if( $a[comp_tx_status] != 'Finalizado' ) {
			if( $a[comp_tx_status] == 'Solicitado' )
				$modificar=".icone_modificar($a[0],'modifica_compra')";
			if( $a[comp_tx_status] == 'Autorizado' )
				$modificar=".icone_modificar($a[0],'layout_finaliza','','','','','','cactus/imagens/boleto.gif')";
				
				$excluir = ".icone_modificar($a[0],'layout_imprime','','','','target=_blank','Imprimir','cactus/imagens/imprimir.png')";
				//$excluir = ".icone_excluir($a[0],'exclui_compra')";
		
		} else {
			$modificar="";
			$excluir = ".icone_modificar($a[0],'layout_imprime','','','','target=_blank','Imprimir','cactus/imagens/imprimir.png')";
		}
		
		if($_SESSION[user_tx_nivel]=='Administrativo' && $a[comp_tx_status]=='Finalizado'){
		
			$modificar=".icone_modificar($a[0],'layout_finaliza','','','','','','cactus/imagens/boleto.gif')";
		
		}
		
		
		
		
		$valores[] = array( $a[comp_nb_id], $a[seto_tx_nome], $a[enti_tx_nome], data($a[comp_tx_dataCadastro],1),
							mostra_valor($a[comp_tx_valor]), $a[comp_tx_status]);
	
		$total_valor+=$a[comp_tx_valor];
	}
	
	$valores[] = array( '', '', '', '<b>TOTAL: </b>', mostra_valor($total_valor), '' );
	
	cactux::fecha_form();
	
	echo"<br>";
	grid::gerar($cabecalho,$valores);

	
	rodape();
	
	
}




function seleciona_layout_finaliza(){
	
	
	
	
	$IDS_MOV = ids_agrupados($_POST[ids_agrupados]);
	$total_ids=count($IDS_MOV);
/*
	
	for($i=0;$i!=$total_ids;$i++){
	
		if($i==0)
			$extra.=" comp_nb_id='$IDS_MOV[$i]'";
		else
			$extra.=" OR comp_nb_id='$IDS_MOV[$i]'";
	
	}
*/
	

	if( $total_ids > 1 ) {
	
		$extra = implode(",",$IDS_MOV);
		$sql = selecionar('compra','comp_tx_status',"!inativo"," AND comp_nb_id IN($extra)");
		while( $a = carrega_array($sql) ) {
			
			// if( $a[comp_tx_status] != 'Autorizado' ) {
			
				// set_status("ERRO: Todas as requisições devem ser autorizadas!");
				// index();
				// exit;
			
			// }
				
		}
		
		layout_finaliza();
	} else {
		layout_finaliza_original();
		
	}
	
	exit;

}

function excluir_compra(){
	
	remover('compra',$_POST[id]);
	index();
	exit;

}



function envia_anexo(){
	
	global $CACTUX_CONF;
	$a_mod=$_POST[a_mod];
	
	$anexo = $_FILES[anexo];

	// print_r($_POST);
	// exit;
	
	//CONSULTA OS DADOS DA COMPRA LIGADA A MOVIMENTO PARA PEGAR O ID DO MOVIMENTO
	$sql_compra = selecionar('compra,movimento','comp_nb_id',"$_POST[id]",'',0);
	if(num_linhas($sql_compra)==0){
		
		set_status("ERRO: Movimento não encontrado!");
		index();
		exit;

	}
	$a_compra = carrega_array($sql_compra);
	
		
	//DADOS DA TABELA ANEXO
	$campos = array(anex_tx_nome, anex_nb_movimento, anex_tx_tipo,anex_tx_status);
	$valores = array($_POST[titulo],$a_compra[movi_nb_id],'compra',ativo);
	
	
	//SE NÃO EXISTIR ANEXO DESSE MOVIMENTO ELE INSERE NA TABELA
	if( !$_POST[id_anexo] ) {
		//INSERIR
		$campos = array_merge($campos,array(anex_nb_userCadastro, anex_tx_dataCadastro));
		$valores = array_merge($valores,array($_SESSION[user_nb_id],date("Y-m-d H:i:s")));
		inserir('anexo',$campos,$valores,1);
		$_POST[id_anexo]=ultimo_reg('anexo');
	} else {
		//ATUALIZAR
		$campos = array_merge($campos,array(anex_nb_userAtualiza, anex_tx_dataAtualiza));
		$valores = array_merge($valores,array($_SESSION[user_nb_id],date("Y-m-d H:i:s")));
		atualizar('anexo',$campos,$valores,$_POST[id_anexo]);
	}


	$_POST[titulo]=ereg_replace("[^a-zA-Z0-9_]", "", strtr($_POST[titulo], "áàãâéêíóôõúüçÁÀÃÂÉÊÍÓÔÕÚÜÇ ", "aaaaeeiooouucAAAAEEIOOOUUC_"));
	$_POST[titulo]=str_replace(" ", "_", $_POST[titulo]);
	//$_POST[titulo]=substr($_POST[titulo],0,-3);
		
	//GUARDAR O ANEXO
	if( $anexo[name] != '') {
		// CRIA O DIRETÓRIO PARA GUARDAR OS ANEXOS DA COMPRA, ATRAVÉS DO ID DO MOVIMENTO
		//@mkdir("$_SERVER[DOCUMENT_ROOT]/$CACTUX_CONF[path]/arquivos/anexos/$a_compra[movi_nb_id]");
		
		//GUARDA O ARQUIVO DENTRO DA PASTA DO ID DO MOVIMENTO, SALVA COM O NOME DO TÍTULO E O ID DO MOVIMENTO
		$msg = enviar('anexo',$CACTUX_CONF[path].'/arquivos/anexos/'.$a_compra[movi_nb_id].'-'.$_POST[titulo],1); 
		
		set_status('Anexo Cadastrado com Sucesso!');
		
		// GUARDA O NOME DO ARQUIVO ORIGINAL NA TAVELA ANEXO
		if( !bd_erro($msg) ) {
			$envia_campos = 'anex_tx_arquivo';		
			$envia_valores = basename($msg);
			atualizar('anexo',$envia_campos,$envia_valores,$_POST[id_anexo]);
		}
	}
		
	layout_anexo();
	exit;
}

function exclui_anexo(){
	
	$a = carregar('anexo,movimento',$_POST[id]);
	remover('anexo',$_POST[id]);
	$_POST[id]=$a[movi_nb_compra];
	
	layout_anexo();
	exit;
}


function modifica_anexo(){
	global $a_mod;
	
	$a_mod = carregar('anexo,movimento',$_POST[id]);
	$_POST[id]=$a_mod[movi_nb_compra];
	
	layout_anexo();
	exit;
}




function layout_anexo(){
	global $a_mod;
	global $CACTUX_CONF;
	
	cabecalho('Financeiro de Compra',2);

	$a_mov=carregar('compra,movimento',$_POST[id]);
	if($a_mov[movi_tx_arquivo]!=''){
		$icone_ver_movimento="<a href='../arquivos/financeiro/".$a_mov[movi_tx_arquivo]."' target=_blank  onmouseover=exibe_ajuda(8,this) onmouseout=remove_ajuda(8) ><img src='..//cactus/imagens/boleto.gif'  border=0></a>";
		$valores[]=array('',"Anexo do financeiro",$icone_ver_movimento,'','');
	}


	
	//CONSULTAS
	$a_compra = carregar('compra,setor,entidade',$_POST[id]);
	$a_comprador = carregar('user',"$a_compra[comp_nb_userCadastro]");
	
	// CAMPOS TEXTO
	$t1[] = cactux::texto('Código:',$a_compra[comp_nb_id],2);
	$t1[] = cactux::texto('Setor:',$a_compra[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comprador[user_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_compra[comp_tx_dataCadastro],1),2);
	$t2[] = cactux::texto('Fornecedor:',$a_compra[enti_tx_nome],4);
	
	//CAMPOS PARA DADOS DO ARQUIVO
	$c[] = cactux::campo('Título:','titulo',$a_mod[anex_tx_nome],4);
	$c[] = cactux::campo_arquivo('Anexo:','anexo',4);
	
	//UTILIZADA APENAS PARA TESTE
	//$_POST[id] = 1;
	
	$gravar = cactux::botao_submit('Gravar',2,'envia_anexo','id_movi,id,id_anexo',"$a_compra[comp_nb_movimento], $_POST[id],$a_mod[anex_nb_id]");
	$voltar = cactux::botao('Voltar',2,'voltar');
	$status = cactux::msg_status();
	
	cactux::abre_form('upload');
	
	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0]);
	cactux::linha_fieldset($c[0],$c[1]);
	cactux::linha_fieldset($voltar,$gravar,$status);
	cactux::fecha_fieldset();
	
	cactux::fecha_form();
	
	cactux::acao_botao('voltar','index');
	
	$sql = selecionar('anexo','anex_tx_status',"!inativo"," AND anex_nb_movimento='$a_compra[comp_nb_movimento]' $extra ORDER BY anex_nb_id");
		
	$cabecalho[] = array('COD','ANEXO','','','');
	$cabecalho[] = 'c,e';
	$cabecalho[] = '6%,,3%,3%,3%';
	$cabecalho[] = '50%';
	
	while( $a = carrega_array($sql) ){
		$ver_anexo="<a href=$CACTUX_CONF[path]/arquivos/anexos/$a[anex_tx_arquivo] target=_blank><img src = '$CACTUX_CONF[path]cactus/imagens/boleto.gif'></a>";

		$valores[] = array($a[anex_nb_id],$a[anex_tx_nome],$ver_anexo,".icone_modificar($a[0],modifica_anexo)",".icone_excluir($a[0],exclui_anexo)");
	}
	
	grid::gerar($cabecalho,$valores);
	
	rodape();
}



function cadastra_pendente(){


	$id_listacompra=$_POST[id_listacompra];
	$obs_pendente=$_POST[obs_pendente];

	for($i=0;$i<count($id_listacompra);$i++){

		if($obs_pendente[$i]!='')
			$t_obs++;

		atualizar('listacompra','list_tx_obsPendente',$obs_pendente[$i],$id_listacompra[$i]);
	
	}

	if($t_obs==count($id_listacompra))
		atualizar('compra','comp_tx_status',"Finalizado",$_POST[id]);
	else
		atualizar('compra','comp_tx_status',"Pendente",$_POST[id]);



	index();
	exit;

	// print_r($_POST);
	// exit;

}




/*
function imprimir_pendente(){
	global $a_mod;
	global $CACTUX_CONF;
	

	
	$a_comp=carregar('compra,setor,entidade.user',$_POST[id],'',""," AND user_nb_id=comp_nb_userCadastro");
	
	cabecaRelatorio('PRODUTOS PENDENTES');
	
	
	cactux::fecha_form();
		
	$t1[] = cactux::texto('Código:',zeros($a_comp[comp_nb_id],3),2);
	$t1[] = cactux::texto('Setor:',$a_comp[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comp[user_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_comp[comp_tx_dataCadastro],1),2);

	$t2[] = cactux::texto('Fornecedor:',$a_comp[enti_tx_nome],4);
	$t2[] = cactux::texto('Descrição/Forma de Pagamento:',$a_comp[comp_tx_obsCadastro],4);
	
//	$t2[] = cactux::texto('Valor:',"R$ ".mostra_valor($a_comp[comp_tx_valor],1),2);

	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0],$t2[1],$t2[2]);
	cactux::fecha_fieldset();

	echo"<br>";
	
	
	
	$cabeca[] = array('','PRODUTO','UNIDADE','QUANTIDADE','QTDE RECEBIDA','VALOR UN.','VALOR','OBSERVAÇÃO DA PENDÊNCIA');
	$cabeca[] = 'c,e,c,c,c,c,c,e,e';
	$cabeca[] = '5%,20%,10%,10%,10%,10%,10%,';
	$cabeca[] = '98%,';

	$sql=selecionar('listacompra,compra,produto','list_nb_compra,list_tx_status',"$_POST[id],encerrado"," AND list_tx_recebido!=list_tx_qtde ORDER BY prod_tx_nome,list_nb_id");
	while( $a=carrega_array($sql) ) {
		
		
		if( $a[list_tx_recebido] > 0 ){
			$qtde = $a[list_tx_recebido];
			$valor = $a[list_tx_valor]*$a[list_tx_qtde];
		}
		else{
			$valor = $a[list_tx_valor]*$a[list_tx_qtde];
			$qtde = $a[list_tx_qtde];
		}
		
		$valor_total += $valor;

		$campo = "<input type=text name=obs_pendente[] value='$a[list_tx_obsPendente]' style='width:100%; text-align:left;' >
		<input type=hidden name=id_listacompra[] value='$a[list_nb_id]'>";
		
		
		$valores[] = array(++$j,$a[prod_tx_nome],$a[list_tx_unidade],mostra_valor($a[list_tx_qtde],1),mostra_valor($a[list_tx_recebido],1),mostra_valor($a[list_tx_valor],1),mostra_valor($valor),$a[list_tx_obsPendente]);
		
	}
	if(mostra_valor($a_comp[comp_tx_valor],1) != mostra_valor($valor_total,1))
		$valores[]=array('','','','','','<B>SUB-TOTAL:','<B>'.mostra_valor($valor_total,1),'');
	
	
	$valores[]=array('','','','','','<B>TOTAL:','<B>'.mostra_valor($a_comp[comp_tx_valor],1),'');
	
	grid::gerar($cabeca,$valores);
	
	cactux::fecha_form();

	cactux::acao_botao('voltar','index');

	rodape();
}
*/



function layout_pendente(){
	global $a_mod;
	global $CACTUX_CONF;
	
	cabecalho('Financeiro de Compra',2);

	
	//CONSULTAS
	$a_compra = carregar('compra,setor,entidade',$_POST[id]);
	$a_comprador = carregar('user',"$a_compra[comp_nb_userCadastro]");
	
	// CAMPOS TEXTO
	$t1[] = cactux::texto('Código:',$a_compra[comp_nb_id],2);
	$t1[] = cactux::texto('Setor:',$a_compra[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comprador[user_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_compra[comp_tx_dataCadastro],1),2);
	$t2[] = cactux::texto('Fornecedor:',$a_compra[enti_tx_nome],4);
	
	
	
	//UTILIZADA APENAS PARA TESTE
	//$_POST[id] = 1;
	
	$gravar = cactux::botao_submit('Gravar',2,'cadastra_pendente','id',"$_POST[id]");
	$voltar = cactux::botao('Voltar',2,'voltar');
	$status = cactux::msg_status();
	
	cactux::abre_form('upload');
	
	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0]);
	cactux::linha_fieldset($voltar,$gravar,$status);
	cactux::fecha_fieldset();
	
	
	
	$cabeca[] = array('','PRODUTO','UNIDADE','QUANTIDADE','QTDE RECEBIDA','VALOR UN.','VALOR','OBSERVAÇÃO DA PENDÊNCIA');
	$cabeca[] = 'c,e,c,c,c,c,c,e,e';
	$cabeca[] = '5%,20%,10%,10%,10%,10%,10%,';

	$sql=selecionar('listacompra,compra,produto','list_nb_compra,list_tx_status',"$_POST[id],encerrado"," AND list_tx_recebido!=list_tx_qtde ORDER BY prod_tx_nome,list_nb_id");
	while( $a=carrega_array($sql) ) {
		
		
		if( $a[list_tx_recebido] > 0 ){
			$qtde = $a[list_tx_recebido];
			$valor = $a[list_tx_valor]*$a[list_tx_qtde];
		}
		else{
			$valor = $a[list_tx_valor]*$a[list_tx_qtde];
			$qtde = $a[list_tx_qtde];
		}
		
		$valor_total += $valor;

		$campo = "<input type=text name=obs_pendente[] value='$a[list_tx_obsPendente]' style='width:100%; text-align:left;' >
		<input type=hidden name=id_listacompra[] value='$a[list_nb_id]'>";
		
		
		$valores[] = array(++$j,$a[prod_tx_nome],$a[list_tx_unidade],mostra_valor($a[list_tx_qtde],1),mostra_valor($a[list_tx_recebido],1),mostra_valor($a[list_tx_valor],1),mostra_valor($valor),$campo);
		
	}
	if(mostra_valor($a_compra[comp_tx_valor],1) != mostra_valor($valor_total,1))
		$valores[]=array('','','','','','<B>SUB-TOTAL:','<B>'.mostra_valor($valor_total,1),'');
	
	
	$valores[]=array('','','','','','<B>TOTAL:','<B>'.mostra_valor($a_compra[comp_tx_valor],1),'');
	
	grid::gerar($cabeca,$valores);
	
	cactux::fecha_form();

	cactux::acao_botao('voltar','index');

	rodape();
}

function cadastra_xml2(){
	set_time_limit(0);
	$dir ='../elijanio/052017/';
	if (is_dir($dir)) {
	    if ($dh = opendir($dir)) {
	        while (($file = readdir($dh)) !== false) {
	        	if($file == '.' || $file =='..')
	        		continue;

	            if (file_exists("../elijanio/052017/".$file)) {
			
		
					$xml = simplexml_load_file("../elijanio/052017/".$file);
					$produto = $xml->NFe->infNFe->det;
					$t_produto = count($produto);

					$a_emit = $xml->NFe->infNFe->emit;
					$cnpj_forn = $a_emit->CNPJ;
					$cnpj_forn = substr($cnpj_forn,0,2).".".substr($cnpj_forn,2,3).".".substr($cnpj_forn,5,3)."/".substr($cnpj_forn,8,4)."-".substr($cnpj_forn,12,2);

					$nome_forn = $a_emit->xNome;
					$fantasia_forn = $a_emit->xFant;
					$ie_forn = $a_emit->IE;
					$im_forn = $a_emit->IM;
					$cnae_forn = $a_emit->CNAE;
					

					$logradouro = $a_emit->enderEmit->xLgr;
					$numero = $a_emit->enderEmit->nro;
					$bairro = $a_emit->enderEmit->xBairro;
					$cep = $a_emit->enderEmit->CEP;
					$fone = $a_emit->enderEmit->fone;
					$cidade = $a_emit->enderEmit->cMun;

					$sql_cidade = selecionar('cidade','cida_tx_ibge',"$cidade"," LIMIT 1");
					if(num_linhas($sql_cidade)>0){
						$a_cidade = carrega_array($sql_cidade);
					}else{
						$a_cidade[0];
					}


					$sql_forn = selecionar('entidade','enti_tx_status',"!inativo"," AND enti_tx_cnpj = '$cnpj_forn'");


					$campos = array(enti_tx_status,enti_tx_nome,enti_tx_cnpj,enti_tx_estadual,enti_tx_municipal,
								enti_tx_endereco,enti_tx_numero,enti_tx_bairro,enti_nb_cidade,enti_tx_cep,
								enti_tx_fone,enti_tx_razao,enti_tx_tipo,enti_tx_pessoa);
				
					$valores = array('ativo',$fantasia_forn,$cnpj_forn,$ie_forn,$im_forn,
									$logradouro,$numero,$bairro,$a_cidade[0],$cep,
									$fone,$nome_forn,'Fornecedor','Pessoa Jurídica');

					if(num_linhas($sql_forn)==0){
						inserir('entidade',$campos,$valores,1);
						$_POST[entidade] = ultimo_reg('entidade');
					}else{
						$a_forn = carrega_array($sql_forn);
						$_POST[entidade] = $a_forn[0];
					}



					for($i=0;$i<$t_produto;$i++){
						
						$a_pro = $xml->NFe->infNFe->det[$i]->prod;
						$a_imposto = $xml->NFe->infNFe->det[$i]->imposto;
						$cod = $a_pro->cProd;
						$cean = $a_pro->cEAN;
						$extipi = $a_pro->EXTIPI;
						$nome = $a_pro->xProd;
						$ncm = $a_pro->NCM;
						$cest = $a_pro->CEST;
						$cfop = $a_pro->CFOP;
						$qtde = $a_pro->qCom;
						$valor = $a_pro->vUnCom;
						$und = $a_pro->uCom;
						$cProd = $a_pro->cProd;
						// $ocst = $xml->NFe->infNFe->det[$i]->imposto->ICMS->ICMSSN500->orig.$xml->NFe->infNFe->det[$i]->imposto->ICMS->ICMSSN500->CSOSN;

						$vProduto = floatval($a_pro->vProduto);
						$total_trib = floatval($a_imposto->vTotTrib);
						$porcentagem = ($total_trib/$vProduto)*100;

						foreach ($a_imposto->ICMS[0] as $a_imp) {
							$origem=$a_imp->orig;
							$cstCsosn=$a_imp->CSOSN;
						}
						foreach ($a_imposto->PIS[0] as $a_imp) {
							$cstPIS=$a_imp->CST;
							$pPIS=$a_imp->pPIS;
						}
						foreach ($a_imposto->COFINS[0] as $a_imp) {
							$cstCOFINS=$a_imp->CST;
							$pCOFINS=$a_imp->pCOFINS;
						}


						$sql_imposto = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$ncm' AND impo_tx_tipo = 'ncm' LIMIT 1");
						$a_impo = carrega_array($sql_imposto);
						$sql_origem = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$origem' AND impo_tx_tipo = 'origem' LIMIT 1");
						$a_orig = carrega_array($sql_origem);
						$sql_csosn = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$cstCsosn' AND impo_tx_tipo = 'CST/CSOSN' LIMIT 1");
						$a_csosn = carrega_array($sql_csosn);
						$sql_pis = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$cstPIS' AND impo_tx_tipo = 'CST/PIS/PASEP' LIMIT 1");
						$a_pis = carrega_array($sql_pis);
						$sql_cofins = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$cstCOFINS' AND impo_tx_tipo = 'CST/COFINS' LIMIT 1");
						$a_cofins = carrega_array($sql_cofins);
						
						$sql_tributacao = selecionar('tributacao,imposto','impo_tx_status,trib_tx_status','ativo,ativo'," AND impo_tx_codigo='$ncm' AND impo_tx_tipo = 'ncm'");
						if(num_linhas($sql_tributacao)>0){
							$a_trib = carrega_array($sql_tributacao);
							atualizar('tributacao',
								array(trib_nb_empresa,trib_nb_imposto,trib_nb_cstOrigem,trib_nb_cstCsosn,trib_nb_cstPis,trib_tx_aliquotaPis,trib_nb_cstCofins,trib_tx_aliquotaCofins,trib_tx_status,trib_tx_cest),
								array(1,$a_impo[0],$a_orig[0],$a_csosn[0],$a_pis[0],$pPIS,$a_cofins[0],$pCOFINS,'ativo',$cests),
								$a_trib[0]
							);
						}else{
							
							inserir('tributacao',
								array(trib_nb_empresa,trib_nb_imposto,trib_nb_cstOrigem,trib_nb_cstCsosn,trib_nb_cstPis,trib_tx_aliquotaPis,trib_nb_cstCofins,trib_tx_aliquotaCofins,trib_tx_status,trib_tx_cest),
								array(1,$a_impo[0],$a_orig[0],$a_csosn[0],$a_pis[0],$pPIS,$a_cofins[0],$pCOFINS,'ativo',$cests),
								1
							);
						}


						// $sql_prod = selecionar('produto','prod_tx_status','ativo'," AND prod_tx_nome = '$nome' AND prod_tx_ncm = '$ncm' AND prod_tx_cfop = '$cfop'");
						$sql_lifo = selecionar('lifornecedor','lifo_tx_status','ativo'," AND lifo_tx_codigo = '$cod' AND lifo_nb_entidade = '$_POST[entidade]'");
						if(num_linhas($sql_lifo)>0){
							$a_lifo = carrega_array($sql_lifo);
							$id_produto = $a_lifo[lifo_nb_produto];
						}else{

							//-----------------------
							$campos = array(prod_nb_id,prod_tx_nome,prod_nb_categoria,prod_nb_unidade,prod_tx_valorCusto,prod_tx_valorVenda,prod_tx_qtde,prod_tx_ncm,prod_tx_cfop,prod_tx_cest,prod_tx_codbarras,prod_tx_extipi,prod_tx_totalTributo,prod_tx_status);
							$valores=array($cProd,$nome,1,1,$valor,$valor,$qtde,$ncm,$cfop,$ocst,$cean,$extipi,$porcentagem,'ativo');
							inserir('produto',$campos,$valores,1);
							$id_produto = ultimo_reg('produto');

							$cam = array(lifo_nb_entidade,lifo_nb_produto,lifo_tx_codigo,lifo_tx_data,lifo_nb_user,lifo_tx_status);
							$val = array($_POST[entidade],$id_produto,$cod,date("Y-m-d"),$_SESSION[user_nb_id],'ativo');
							inserir('lifornecedor',$cam,$val,1);
							//------------------------

							$id_produto = '';

						}

					}

				} else {
					echo 'Falha ao abrir xml!<br>';
				}
	        }
	        closedir($dh);
	    }
	}

}

function cadastra_xml(){
	global $CACTUX_CONF;

	$_FILES_ORIGINAL = $_FILES;
	// print_r($_FILES_ORIGINAL);

	
	
	for($i=0;$i<count($_FILES_ORIGINAL[arquivo][name]);$i++){

		$_FILES[arquivo][name] = $_FILES_ORIGINAL[arquivo][name][$i];
		$_FILES[arquivo][type] = $_FILES_ORIGINAL[arquivo][type][$i];
		$_FILES[arquivo][tmp_name] = $_FILES_ORIGINAL[arquivo][tmp_name][$i];
		$_FILES[arquivo][error] = $_FILES_ORIGINAL[arquivo][error][$i];
		$_FILES[arquivo][size] = $_FILES_ORIGINAL[arquivo][size][$i];
		
		$arquivo=$_FILES[arquivo];

		// print_r($arquivo); exit;

		if( $arquivo[name] != '' && strtolower(substr($arquivo[name],-3)) == 'xml'){
			$campos=array(comp_nb_entidade,comp_nb_setor,comp_nb_userCadastro,comp_tx_dataCadastro,comp_tx_obsCadastro,comp_tx_status);
			$valores=array(1,1,$_SESSION[user_nb_id],date("Y-m-d H:i:s"),$_POST[obs],'Recebido'); //Recebido
			inserir('compra',$campos,$valores,1);
			
			$_POST[id] = ultimo_reg('compra');
			
			$msg = enviar('arquivo',"$CACTUX_CONF[path]arquivos/xml/",$_POST[id],1);
			if(!bd_erro($msg))
				atualizar('compra',array('comp_tx_arquivoImporta'),array(basename($msg)),$_POST[id]);

		}else{

			echo'ERRO: Envie o XML para importação!';
		}

		if (file_exists("../arquivos/xml/".basename($msg))) {
			
		
			$xml = simplexml_load_file("../arquivos/xml/".basename($msg));
			$produto = $xml->NFe->infNFe->det;
			$t_produto = count($produto);

			$a_emit = $xml->NFe->infNFe->emit;
			$cnpj_forn = $a_emit->CNPJ;
			$cnpj_forn = substr($cnpj_forn,0,2).".".substr($cnpj_forn,2,3).".".substr($cnpj_forn,5,3)."/".substr($cnpj_forn,8,4)."-".substr($cnpj_forn,12,2);

			$nome_forn = $a_emit->xNome;
			$fantasia_forn = $a_emit->xFant;
			$ie_forn = $a_emit->IE;
			$im_forn = $a_emit->IM;
			$cnae_forn = $a_emit->CNAE;
			

			$logradouro = $a_emit->enderEmit->xLgr;
			$numero = $a_emit->enderEmit->nro;
			$bairro = $a_emit->enderEmit->xBairro;
			$cep = $a_emit->enderEmit->CEP;
			$fone = $a_emit->enderEmit->fone;
			$cidade = $a_emit->enderEmit->cMun;

			$sql_cidade = selecionar('cidade','cida_tx_ibge',"$cidade"," LIMIT 1");
			if(num_linhas($sql_cidade)>0){
				$a_cidade = carrega_array($sql_cidade);
			}else{
				$a_cidade[0];
			}


			$sql_forn = selecionar('entidade','enti_tx_status',"!inativo"," AND enti_tx_cnpj = '$cnpj_forn'");


			$campos = array(enti_tx_status,enti_tx_nome,enti_tx_cnpj,enti_tx_estadual,enti_tx_municipal,
						enti_tx_endereco,enti_tx_numero,enti_tx_bairro,enti_nb_cidade,enti_tx_cep,
						enti_tx_fone,enti_tx_razao,enti_tx_tipo,enti_tx_pessoa);
		
			$valores = array('ativo',$fantasia_forn,$cnpj_forn,$ie_forn,$im_forn,
							$logradouro,$numero,$bairro,$a_cidade[0],$cep,
							$fone,$nome_forn,'Fornecedor','Pessoa Jurídica');

			if(num_linhas($sql_forn)==0){
				inserir('entidade',$campos,$valores,1);
				$_POST[entidade] = ultimo_reg('entidade');
			}else{
				$a_forn = carrega_array($sql_forn);
				$_POST[entidade] = $a_forn[0];
			}



			for($i=0;$i<$t_produto;$i++){
				
				$a_pro = $xml->NFe->infNFe->det[$i]->prod;
				$a_imposto = $xml->NFe->infNFe->det[$i]->imposto;
				$cod = $a_pro->cProd;
				$cean = $a_pro->cEAN;
				$extipi = $a_pro->EXTIPI;
				$nome = $a_pro->xProd;
				$ncm = $a_pro->NCM;
				$cest = $a_pro->CEST;
				$cfop = $a_pro->CFOP;
				$qtde = $a_pro->qCom;
				$valor = $a_pro->vUnCom;
				$und = $a_pro->uCom;
				// $ocst = $xml->NFe->infNFe->det[$i]->imposto->ICMS->ICMSSN500->orig.$xml->NFe->infNFe->det[$i]->imposto->ICMS->ICMSSN500->CSOSN;

				$valorIndividual = floatval($a_pro->vUnCom);
				$total_trib = floatval($a_imposto->vTotTrib);
				$porcentagem = ($total_trib/$valorIndividual)*100;

				foreach ($a_imposto->ICMS[0] as $a_imp) {
					$origem=$a_imp->orig;
					$cstCsosn=$a_imp->CSOSN;
				}
				foreach ($a_imposto->PIS[0] as $a_imp) {
					$cstPIS=$a_imp->CST;
					$pPIS=$a_imp->pPIS;
				}
				foreach ($a_imposto->COFINS[0] as $a_imp) {
					$cstCOFINS=$a_imp->CST;
					$pCOFINS=$a_imp->pCOFINS;
				}


				$sql_imposto = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$ncm' AND impo_tx_tipo = 'ncm' LIMIT 1");
				$a_impo = carrega_array($sql_imposto);
				$sql_origem = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$origem' AND impo_tx_tipo = 'origem' LIMIT 1");
				$a_orig = carrega_array($sql_origem);
				$sql_csosn = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$cstCsosn' AND impo_tx_tipo = 'CST/CSOSN' LIMIT 1");
				$a_csosn = carrega_array($sql_csosn);
				$sql_pis = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$cstPIS' AND impo_tx_tipo = 'CST/PIS/PASEP' LIMIT 1");
				$a_pis = carrega_array($sql_pis);
				$sql_cofins = selecionar('impo_nb_id|imposto','impo_tx_status','ativo'," AND impo_tx_codigo='$cstCOFINS' AND impo_tx_tipo = 'CST/COFINS' LIMIT 1");
				$a_cofins = carrega_array($sql_cofins);
				
				$sql_tributacao = selecionar('tributacao,imposto','impo_tx_status,trib_tx_status','ativo,ativo'," AND impo_tx_codigo='$ncm' AND impo_tx_tipo = 'ncm'");
				if(num_linhas($sql_tributacao)>0){
					$a_trib = carrega_array($sql_tributacao);
					atualizar('tributacao',
						array(trib_nb_empresa,trib_nb_imposto,trib_nb_cstOrigem,trib_nb_cstCsosn,trib_nb_cstPis,trib_tx_aliquotaPis,trib_nb_cstCofins,trib_tx_aliquotaCofins,trib_tx_status,trib_tx_cest),
						array(1,$a_impo[0],$a_orig[0],$a_csosn[0],$a_pis[0],$pPIS,$a_cofins[0],$pCOFINS,'ativo',$cests),
						$a_trib[0]
					);
				}else{
					
					inserir('tributacao',
						array(trib_nb_empresa,trib_nb_imposto,trib_nb_cstOrigem,trib_nb_cstCsosn,trib_nb_cstPis,trib_tx_aliquotaPis,trib_nb_cstCofins,trib_tx_aliquotaCofins,trib_tx_status,trib_tx_cest),
						array(1,$a_impo[0],$a_orig[0],$a_csosn[0],$a_pis[0],$pPIS,$a_cofins[0],$pCOFINS,'ativo',$cests),
						1
					);
				}


				// $sql_prod = selecionar('produto','prod_tx_status','ativo'," AND prod_tx_nome = '$nome' AND prod_tx_ncm = '$ncm' AND prod_tx_cfop = '$cfop'");
				$sql_lifo = selecionar('lifornecedor','lifo_tx_status','ativo'," AND lifo_tx_codigo = '$cod' AND lifo_nb_entidade = '$_POST[entidade]'");
				if(num_linhas($sql_lifo)>0){
					$a_lifo = carrega_array($sql_lifo);
					$id_produto = $a_lifo[lifo_nb_produto];
				}else{

					//-----------------------
					$campos = array(prod_tx_nome,prod_nb_categoria,prod_nb_unidade,prod_tx_valorCusto,prod_tx_valorVenda,prod_tx_qtde,prod_tx_ncm,prod_tx_cfop,prod_tx_cest,prod_tx_codbarras,prod_tx_extipi,prod_tx_totalTributo,prod_tx_status);
					$valores=array($nome,1,1,$valor,$valor,$qtde,$ncm,$cfop,$ocst,$cean,$extipi,$porcentagem,'ativo');
					inserir('produto',$campos,$valores,1);
					$id_produto = ultimo_reg('produto');

					$cam = array(lifo_nb_entidade,lifo_nb_produto,lifo_tx_codigo,lifo_tx_data,lifo_nb_user,lifo_tx_status);
					$val = array($_POST[entidade],$id_produto,$cod,date("Y-m-d"),$_SESSION[user_nb_id],'ativo');
					inserir('lifornecedor',$cam,$val,1);
					//------------------------

					$id_produto = '';

				}

				$valores=array($_POST[id],$nome,$id_produto,$qtde,$valor,'ativo',$und,$ncm,$cfop,$ocst,$cod);
				$campos=array(list_nb_compra,list_tx_produto,list_nb_produto,list_tx_qtde,list_tx_valor,list_tx_status,list_tx_unidade,list_tx_ncm,list_tx_cfop,list_tx_cest,list_tx_codigoFornecedor);
				inserir('listacompra',$campos,$valores,1);
				$ultimo_lista = ultimo_reg('listacompra');
				$a_list = carregar('listacompra',$ultimo_lista);
				$total += $a_list[list_tx_qtde] * $a_list[list_tx_valor];

			}

			atualizar('compra',array('comp_tx_valor','comp_nb_entidade','comp_tx_status'),array($total,$_POST[entidade],'Recebido'),$_POST[id]);
		
		} else {
			echo 'Falha ao abrir xml!<br>';
		}

	}

	layout_xml();
	exit;
}


function cadastra_listacompra(){
	
	for($i=0;$i<count($_POST[id_lista]);$i++){
		
		$a_lista = carregar('listacompra,compra',$_POST[id_lista][$i]);
		
		if($_POST[escolha][$i] == 'Cadastrar'){


			$campos = array(prod_tx_nome,prod_nb_categoria,prod_nb_unidade,prod_tx_valorCusto,prod_tx_valorVenda,prod_tx_qtde,prod_tx_ncm,prod_tx_cfop,prod_tx_cest,prod_tx_status);
			$valores=array($a_lista[list_tx_produto],1,1,$a_lista[list_tx_valor],$_POST[valorVenda][$i],$a_lista[list_tx_qtde],$_POST[ncm][$i],$_POST[cfop][$i],$_POST[cest][$i],'ativo');
			inserir('produto',$campos,$valores,1);
			$id_produto = ultimo_reg('produto');

			$cam = array(lifo_nb_entidade,lifo_nb_produto,lifo_tx_codigo,lifo_tx_data,lifo_nb_user,lifo_tx_status);
			$val = array($a_lista[comp_nb_entidade],$id_produto,$a_lista[list_tx_codigoFornecedor],date("Y-m-d"),$_SESSION[user_nb_id],'ativo');
			inserir('lifornecedor',$cam,$val,1);

			atualizar('listacompra','list_nb_produto',$id_produto,$a_lista[list_nb_id]);
		
		}elseif($_POST[escolha][$i] == 'Adicionar Estoque'){
			
			$a_produto = carregar('produto',$a_lista[list_nb_produto]);

			$campos = array(prod_tx_nome,prod_nb_categoria,prod_nb_unidade,prod_tx_valorCusto,prod_tx_valorVenda,prod_tx_qtde,prod_tx_ncm,prod_tx_cfop,prod_tx_cest,prod_tx_status);
			$valores=array($a_lista[list_tx_produto],1,1,$a_lista[list_tx_valor],$_POST[valorVenda][$i],$a_produto[prod_tx_qtde]+$a_lista[list_tx_qtde],$_POST[ncm][$i],$_POST[cfop][$i],$_POST[cest][$i],'ativo');
			atualizar('produto',$campos,$valores,$a_lista[list_nb_produto]);

		}elseif($_POST[escolha][$i] == 'Novo Fornecedor'){

			$a_produto = carregar('produto',$_POST[produto][$i]);
			
			$campos = array(prod_nb_categoria,prod_nb_unidade,prod_tx_valorCusto,prod_tx_valorVenda,prod_tx_qtde,prod_tx_ncm,prod_tx_cfop,prod_tx_cest,prod_tx_status);
			$valores=array(1,1,$a_lista[list_tx_valor],$_POST[valorVenda][$i],$a_produto[prod_tx_qtde]+$a_lista[list_tx_qtde],$_POST[ncm][$i],$_POST[cfop][$i],$_POST[cest][$i],'ativo');
			atualizar('produto',$campos,$valores,$a_produto[prod_nb_id]);
			
			$cam = array(lifo_nb_entidade,lifo_nb_produto,lifo_tx_codigo,lifo_tx_data,lifo_nb_user,lifo_tx_status);
			$val = array($a_lista[comp_nb_entidade],$_POST[produto][$i],$a_lista[list_tx_codigoFornecedor],date("Y-m-d"),$_SESSION[user_nb_id],'ativo');
			inserir('lifornecedor',$cam,$val,1);

		}elseif($_POST[escolha][$i] == 'Não Cadastrar'){
			continue;
		}
		

	}

	index();
	exit;
}

function layout_xml(){

	$a_comp=carregar('compra,setor,entidade.user',$_POST[id],'',""," AND user_nb_id=comp_nb_userCadastro");
	
	cabecalho('Solicitação de Compra');
	
	
	cactux::abre_form();
		
	$t1[] = cactux::texto('Código:',zeros($a_comp[comp_nb_id],3),2);
	$t1[] = cactux::texto('Setor:',$a_comp[seto_tx_nome],2);
	$t1[] = cactux::texto('Comprador:',$a_comp[user_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_comp[comp_tx_dataCadastro],1),2);

	$t2[] = cactux::texto('Fornecedor:',$a_comp[enti_tx_nome],4);
	$t2[] = cactux::texto('Descrição/Forma de Pagamento:',$a_comp[comp_tx_obsCadastro],4);

	$b[] = cactux::botao("Voltar",2,'voltar');
	$b[] = cactux::botao_submit("Gravar",2,'cadastra_listacompra');
	
//	$t2[] = cactux::texto('Valor:',"R$ ".mostra_valor($a_comp[comp_tx_valor],1),2);
	$combo_net = cactux::combo_net('!Fornecedor:','busca_fornecedor',$a_fornacedor[enti_nb_id],$a_fornacedor[enti_tx_nome],3,array('busca_div.php?c=entidade','busca_net.php?c=entidade'));

	cactux::abre_fieldset('Informações da Compra');
	cactux::linha_fieldset($t1[0],$t1[1],$t1[2],$t1[3]);
	cactux::linha_fieldset($t2[0],$t2[1],$t2[2]);
	cactux::linha_fieldset($b[0],$b[1]);

	cactux::fecha_fieldset();
	

	
	$cabecalho[]=array('','PRODUTO','UNIDADE','QUANTIDADE','VALOR UN. COMPRA','VALOR TOTAL','AÇÃO','NCM','CFOP','CEST','VALOR VENDA');
	$cabecalho[]='c,e,c,c,c,c,c,c';
	$cabecalho[]='3%,,8%,8%,10%,10%,,8%,8%,8%,8%';
	$cabecalho[]='98%';

	

	$sql_produto = selecionar('produto','prod_tx_status',"!inativo"," AND prod_nb_id > 100 ORDER BY prod_tx_nome");
	while($a_pro=carrega_array($sql_produto)){
		$opt.="<option value='$a_pro[0]'>$a_pro[1]</option>";
	}

	
	
	
	$cont=0;
	$sql = selecionar('listacompra,compra','list_nb_compra,list_tx_status,list_tx_status',"$_POST[id],!inativo,!Negado");	
	while ( $a=carrega_array($sql) ) {

		$select = "<select style='width:100%' name='escolha[".$cont."]' id='escolha_".$cont."' onchange='abre_produto($cont);'>";
		if($a[list_nb_produto] == '' || $a[list_nb_produto] == 0){
			$select.="<option value='Cadastrar'>Cadastrar</option>
				<option value='Novo Fornecedor'>Novo Fornecedor</option>
				<option value='Não Cadastrar'>Não Cadastrar</option>";
				$a_prod='';
		}else{
			$select.="<option value='Adicionar Estoque'>Adicionar Estoque</option>
				<option value='Não Cadastrar'>Não Cadastrar</option>";
				$a_prod=carregar('produto',$a[list_nb_produto]);
				$a[list_tx_ncm] = $a_prod[prod_tx_ncm];
				$a[list_tx_cfop] = $a_prod[prod_tx_cfop];
				$a[list_tx_cest] = $a_prod[prod_tx_cest];
		}
		$select.="</select>";

		$select2 = "
		<select style='width:100%;display:none' id=produto_$cont name='produto[".$cont."]'>
		$opt
		</select>";
	
		$valor_total2+=($a[list_tx_valor]*$a[list_tx_qtde]);

		campo_hidden('id_lista[]',$a[list_nb_id]);

		$ncm = cactux::campo_simples('ncm[]',$a[list_tx_ncm],5);
		$cfop = cactux::campo_simples('cfop[]',$a[list_tx_cfop],5);
		$cest = cactux::campo_simples('cest[]',$a[list_tx_cest],5);
		$campo_simples = cactux::campo_simples('valorVenda[]',mostra_valor($a_prod[prod_tx_valorVenda]),5,MASCARA_VALOR);
		
		$valores[] = array( ++$j, $a[list_tx_produto], $a[list_tx_unidade], mostra_valor($a[list_tx_qtde]), "R$ ".mostra_valor($a[list_tx_valor]),
							"R$ ".mostra_valor($a[list_tx_valor]*$a[list_tx_qtde]),$select."<br>".$select2,$ncm,$cfop,$cest,$campo_simples );

		$cont++;
	
	}

	if( mostra_valor($a_comp[comp_tx_valor],1) != mostra_valor($valor_total2,1))
		$valores[]=array('','','','','<B>SUB-TOTAL:',"R$ ".'<B>'.mostra_valor($valor_total2,1),'','','','','');

	
	$valores[] = array( '', '','', '', '<B>TOTAL:', "R$ ".'<B>'.mostra_valor($a_comp[comp_tx_valor],1) ,'','','','','');

	echo"<br>";
	grid::gerar($cabecalho,$valores);
	echo"<br>";
	
	
	cactux::fecha_form();

	javascript("

		function abre_produto(chave){
			var escolha = document.getElementById('escolha_'+chave).value;
			if(escolha == 'Novo Fornecedor')
				document.getElementById('produto_'+chave).style.display='block';
			else
				document.getElementById('produto_'+chave).style.display='none';

		}

		
	");
	

}

function layout_importar(){

	cabecalho('Financeiro de Compra');

	cactux::abre_form('upload');

	//$c[] = cactux::campo('Data do Arquivo:','data',date("d/m/Y"),2,MASCARA_DATA);
	$c[] = cactux::campo_arquivo('Arquivo XML:','arquivo[]',5,'multiple="multiple"');

	$botao = cactux::botao("Voltar",2,'voltar');
	$botao2 = cactux::botao_submit_busca("Enviar",2,'cadastra_xml');

	cactux::abre_fieldset('Arquivo de retorno');
	cactux::linha_fieldset($c[0],$c[1]);
	cactux::linha_fieldset($botao,$botao2);
	cactux::fecha_fieldset();


	cactux::fecha_form();

	cactux::acao_botao('voltar','index');

}


function index(){
	global $CACTUX_CONF;


	cabecalho('Financeiro de Compra',2);


	// $extra .= " AND comp_tx_status IN('Recebido','Pendente','Finalizado','Finalizado Pendente')";
	

	if( $_POST[busca_data1] )
		$extra .= " AND comp_tx_dataCadastro >= '".gera_data($_POST[busca_data1],1)." 00:00:00'";
	if( $_POST[busca_data2] )
		$extra .= " AND comp_tx_dataCadastro <= '".gera_data($_POST[busca_data2],1)." 23:59:59'";
	if( $_POST[busca_setor] != '1' && $_POST[busca_setor]!= '') {
		$extra .= " AND comp_nb_setor = '$_POST[busca_setor]'";
		$a_setor = carregar('setor',$_POST[busca_setor]);
	}
	if( $_POST[busca_fornecedor] ) {
		$extra .= " AND comp_nb_entidade = '$_POST[busca_fornecedor]'";
		$a_fornacedor = carregar('entidade',$_POST[busca_fornecedor]);
	}
	if( $_POST[busca_status] ) {

		if ( $_POST[busca_status] == 'Finalizado' )
			$extra .= " AND (comp_tx_status='Finalizado' OR comp_tx_status='Finalizado Pendente' OR comp_tx_opcaoFinanceiro='Sim' OR comp_tx_opcaoFinanceiro='Bonificação') ";
		elseif ( $_POST[busca_status] == 'Recebido' )
			$extra .= " AND (comp_tx_status='Recebido' OR comp_tx_status='Pendente') ";
		else
			$extra .= " AND comp_tx_status = '$_POST[busca_status]'";
	}
	
	cactux::abre_form();
	
	//CAMPOS
	$c[] = cactux::campo('Data Inicial:','busca_data1',$_POST[busca_data1],1,MASCARA_DATA);
	$c[] = cactux::campo('Data Final:','busca_data2',$_POST[busca_data2],1,MASCARA_DATA);
	$c[] = cactux::combo_bd('!Setor:','busca_setor',$a_setor[seto_nb_id],$a_setor[seto_tx_nome],3,'setor','',"1  ORDER BY seto_tx_nome");
	$c[] = cactux::combo_net('!Fornecedor:','busca_fornecedor',$a_fornacedor[enti_nb_id],$a_fornacedor[enti_tx_nome],3,array('busca_div.php?c=entidade','busca_net.php?c=entidade'));
	$c[] = cactux::combo('Situação:','busca_status',array('','Solicitado','Autorizado','Recebido','Finalizado','Negado'),$_POST[busca_status],2);


	
	//BOTOES
	$buscar = cactux::botao_submit_busca('Buscar',2,'index');
	$imprimir_busca = cactux::botao('Imprimir',2,'imprimir_busca');
	$importar = cactux::botao('Importar XML',2,'importar_xml');
	$status = cactux::msg_status();
	
	cactux::abre_fieldset('Filtro de Busca');
	cactux::linha_fieldset($c[0],$c[1],$c[2],$c[3],$c[4],$c[5]);
	cactux::linha_fieldset($buscar,$inserir,$imprimir_busca,$importar,$status);
	cactux::fecha_fieldset();

	
	$sql=selecionar('compra,setor,entidade.user','comp_tx_status',"!inativo"," $extra AND user_nb_id=comp_nb_userCadastro ORDER BY comp_nb_id DESC",1);
	$BUSCA = grid::gerar_paginacao($sql,'','',30);
	
	$cabecalho[]=array('','CÓD','SETOR','FORNECEDOR','DATA','VALOR','SITUAÇÃO','','','');
	$cabecalho[]='c,c,e,e,e,c,c,c';
	$cabecalho[]='2%,5%,15%,,5%,6%,6%,2%,2%,2%';
	
	while($a=carrega_array($BUSCA[0])){
	
	
		$check = "<input type=checkbox value=Sim id=check_".$a[comp_nb_id]." onClick=seleciona_check('$a[comp_nb_id]')>";


		// SE NA REQUISIÇÃO MARCAR O FINANCEIRO COMO SIM, O STATUS NESSE PROCESSO FICA FINALIZADO
		if ( $a[comp_tx_opcaoFinanceiro]=='Sim' )
			$a[comp_tx_status] = 'Finalizado';


		// O FINALIZADO PENDENTE É EQUIVALENTE AO STATUS FINALIZADO
		if ( $a[comp_tx_status] == 'Finalizado Pendente' )
			$a[comp_tx_status] = 'Finalizado';

		// O STATUS PENDENTE É O MESMO QUE O STATUS RECEBIDO, SÓ QUE INTERNAMENTE ELE TEM QUE FICAR COM O STATUS PENDENTE
		if ( $a[comp_tx_status] == 'Pendente' )
			$a[comp_tx_status] = 'Recebido';


		if( $a[comp_tx_status] == 'Recebido' ) {
			$modificar = "<a href=# onclick='faz_pagamento($a[comp_nb_id])' alt='Finalizar' ><img src='$CACTUX_CONF[path]/cactus/imagens/visualizar.png' border=0></a>";	
		}
		
		$ver_anexo = "";
		if( $a[comp_tx_status]=='Finalizado' ) {
			// $modificar = "<a href=# onclick='faz_pagamento($a[comp_nb_id])' alt='Finalizar' ><img src='$CACTUX_CONF[path]/cactus/imagens/visualizar.png' border=0></a>";	
			$modificar = "";

			// VERIFICA SE A COMPRA POSSUI UM MOVIMENTO PARA PODER ENVIAR O ANEXO
			if ( $a[comp_nb_movimento] > 0 ) {
				$ver_anexo = ".icone_modificar($a[comp_nb_id],'layout_anexo','','','','','','/cactus/imagens/visualizar2.png')";
			}
		}

		if( $a[comp_tx_status] == 'Pendente' ) {
			$modificar = ".icone_modificar($a[0],layout_pendente)";	
		}


		
		$imprimir = ".icone_modificar($a[0],'layout_imprime','','','','target=_blank','Imprimir','/cactus/imagens/imprimir.png')";
		
		$sql_lista = selecionar('listacompra,compra','comp_nb_id',"$a[comp_nb_id]"," LIMIT 1 ");
		$a_lista = carrega_array($sql_lista);

		if( $a[comp_tx_status]=='Finalizado' && $a_lista[list_tx_recebido] < $a_lista[list_tx_qtde]) {
			$modificar = ".icone_modificar($a[comp_nb_id],'imprimir_pendente','','','pendente.php','target=_blank','','/cactus/imagens/imprimir2.png')";
		}

		if( $a[comp_tx_opcaoFinanceiro]=='Bonificação' ) {
			// ESSA OPÇÃO NÃO REALIZA BAIXA NO FINANCEIRO
			$ver_anexo = "";
			$modificar = "";
			$a[comp_tx_status]='Finalizado'; // ESSA MUDANÇA NÃO DEVE INFLUENCIAR NAS DEMAIS COMPARAÇÕES DE STATUS
		}
		
		if($a_lista[list_tx_recebido] < $a_lista[list_tx_qtde]){
			$cor = "<div style='color:red'>";
		} else {
			$cor = "<div style='color:black'>";
		}
		
		
		$valores[] = array( $check, $a[comp_nb_id], $a[seto_tx_nome], $a[enti_tx_nome], data($a[comp_tx_dataCadastro],1),
							mostra_valor($a[comp_tx_valor]), $a[comp_tx_status], $ver_anexo, $imprimir, $modificar);
	
		$total_valor+=$a[comp_tx_valor];

		unset($ver_anexo, $imprimir, $modificar);
	}
	
	$valores[]=array('','','','','<b>TOTAL: </b>',mostra_valor($total_valor),'','','','');
	
	cactux::fecha_form();
	
	cactux::acao_botao('inserir','layout_compra');
	cactux::acao_botao('imprimir_busca','layout_imprimi_busca','','','','',' target=_blank');
	cactux::acao_botao('importar_xml','layout_importar');

	grid::gerar($cabecalho,$valores);
	grid::paginar($BUSCA);
	
	rodape();
	
	cactux::acao_botao('faz_pagamento_form','seleciona_layout_finaliza','ids_agrupados','0');
	
	javascript("
		
		var IDS_AGRUPA = Array();
		
		function seleciona_check(id) {
			
			var t = IDS_AGRUPA.length;
			var achou=0;
			
			// VARRE O ARRAY E TESTA SE O ID JAH EXISTE, SE JAH EXISTIR ENTAO APAGA
			for(i=0; i!=t; i++) {
				
				if( IDS_AGRUPA[i] == id ) {
					achou = 1;
					IDS_AGRUPA[i]='';
					break;
				}
				
			}
			
			// SE NAO EXISTIR, ENTAO INSERE NO ARRAY
			if( achou != 1 ) {
				
				IDS_AGRUPA[t] = id;
				
			}
			
		}
		
		function faz_pagamento(id_atual) {
			
			// JUNTA O ARRAY EM UMA STRING SEPARADA POR '-'
			var agrupados = IDS_AGRUPA.join('-');
			
			// CONCATENA COM A STRING O ID DO PAGAMENTO CLICADO
			agrupados += '-'+id_atual;
			
			document.faz_pagamento_form.ids_agrupados.value=agrupados;
			document.faz_pagamento_form.submit();
			
		}
		
	");
	
}




controle();
?>
