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


function finaliza_transferencia(){
	
	$a_tran = carregar('transferencia',$_POST[id]);
	
	$sql_test=selecionar('trpr','trpr_tx_status',"!inativo"," AND trpr_nb_transferencia = '$_POST[id]'");
	while($a=carrega_array($sql_test)){
		
		if( intval($a[trpr_tx_qtde])==0) {
			set_status("ERRO: Preencha todos os valores e quantidades");
			layout_produto();
			exit;
		}
	}


	$sql_test=selecionar('trpr,transferencia,produto','trpr_tx_status',"!inativo"," AND trpr_nb_transferencia = '$_POST[id]'");
	while($a=carrega_array($sql_test)){
		$a_prod = carregar('produto',$a[prod_nb_id]);
		if($a[tran_tx_tipo]=='Entrada'){
			atualizar('produto','prod_tx_qtde',$a_prod[prod_tx_qtde]+$a[trpr_tx_qtde],$a[prod_nb_id]);
			$nova_qtde = $a_prod[prod_tx_qtde]+$a[trpr_tx_qtde];
		}else{
			atualizar('produto','prod_tx_qtde',$a_prod[prod_tx_qtde]-$a[trpr_tx_qtde],$a[prod_nb_id]);
			$nova_qtde = $a_prod[prod_tx_qtde]-$a[trpr_tx_qtde];
		}
		registro_cactus("MOVIMENTACAO : $a[trpr_nb_id] - ESTOQUE ATUAL: $a_prod[prod_tx_qtde] - $a[tran_tx_tipo]: $a[trpr_tx_qtde] - ESTOQUE:".($nova_qtde),$a[prod_nb_id]);
	}

	atualizar('transferencia','tran_tx_status','encerrado',$_POST[id]);

	set_status('Estoque atualizado com sucesso!');


	index();
	exit;
	

}


function exclui_produto() {
	
	$a_trpr=carregar('trpr,transferencia,produto',$_POST[id]);

	// if($a_trpr[tran_tx_tipo]=='Entrada'){
	// 	$qtde = $a_trpr[prod_tx_qtde]-$a_trpr[trpr_tx_qtde];
	// }else{
	// 	$qtde = $a_trpr[prod_tx_qtde]+$a_trpr[trpr_tx_qtde];
	// }
	

	// atualizar('produto','prod_tx_qtde',$qtde,$a_trpr[prod_nb_id]);
	
	$_POST[id]=$a_trpr[trpr_nb_transferencia];
	
	remover('trpr',$a_trpr[trpr_nb_id]);
	
	layout_produto();
	exit;
	
	
}

function exclui_transferencia(){
	
	remover('transferencia',$_POST[id]);
	index();
	exit;
	
}


function modifica_transferencia(){
	
	global $a_mod;
	$a_mod = carregar('transferencia',$_POST[id]);
	layout_transferecia();
	exit;
	
}



function cadastra_produto(){



	if($_POST[produto] != '' ){

		$produto=$_POST[produto];
		if($_POST[qtde]<1)
			$_POST[qtde]=1;
		if($_POST[valor_un]<1)
			$_POST[valor_un]=1;

		$campos=array(trpr_nb_transferencia,trpr_nb_produto,trpr_tx_status,trpr_tx_qtde);
		$valores=array($_POST[id],$produto,'ativo',valor($_POST[qtde]));
		inserir('trpr',$campos,$valores,1);
		
		// $a_trpr=carregar('transferencia',$_POST[id]);
		// $a_prod=carregar('produto',$produto);
		// if($a_trpr[tran_tx_tipo]=='Entrada'){
		// 	atualizar('produto','prod_tx_qtde',$a_prod[prod_tx_qtde]+valor($_POST[qtde]),$a_prod[prod_nb_id]);
		// }else{
		// 	atualizar('produto','prod_tx_qtde',$a_prod[prod_tx_qtde]-valor($_POST[qtde]),$a_prod[prod_nb_id]);

		// }
	}
		
	
	layout_produto();
	exit;
	

}


function layout_imprimir(){
	global $a_mod;
	
	$a_tran=carregar('transferencia',"$_POST[id]");
//	$a_cida = carregar('transferencia,loja',$_POST[id]);
	
	//SE TIVER ATUALIZANDO, ENTAO CARREGA OS PRODUTOS JAH CADASTRADOS
	$sql=selecionar('trpr,produto,transferencia','trpr_nb_transferencia,tran_tx_status,trpr_tx_status',"$_POST[id],!inativo,!inativo","",0);	
	
	
	cabecaRelatorio('Movimentação',3);
	
	cactux::abre_form();
	
	$t1[] = cactux::texto('Código:',$a_tran[tran_nb_id],1);
	$t1[] = cactux::texto('Origem/Destino:',$a_tran[tran_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_tran[tran_tx_data],3),2);
	$t1[] = cactux::texto('Tipo:',$a_tran[tran_tx_tipo],2);
	$t2[] = cactux::texto('Obs:',$a_tran[tran_tx_obs],10);

	// LEMBRAR AQUI QUE PARA O COMBO_NET FUNCIONAR, TEM QUE EXISTIR OS CAMPOS DE VALOR,VALOR_CX, VLAOR_UN E FORMA
	$gravar=cactux::botao_submit('Gravar',2,'cadastra_produto','id,valor_prod,valor,valor_cx,valor_un,forma',"$_POST[id],0,0,0,0,0");
	
	$status=cactux::msg_status();
	
	//LIBERA O BOTAO FINALIZAR SOMENTE SE HOUVER NO MINIMO 1 PRODUTO
	// $a_teste1=carregar('listatransferencia','','list_nb_transferencia,list_tx_status',"$_POST[id],ativo");
	
	if(num_linhas($sql)>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],$t1[4]);
	cactux::linha_fieldset($t2[0]);
	cactux::fecha_fieldset();
	cactux::fecha_form();	


	$cabecalho[]=array('COD','PRODUTO','QUANTIDADE');
	$cabecalho[]='c,e';
	$cabecalho[]='5%,,15%,2%';

	
	while( $a=carrega_array($sql) ) {

		$valores[]=array(++$j,$a[prod_tx_nome],mostra_valor($a[trpr_tx_qtde]));
		
		// $total_valor+=$a[trpr_tx_valor]*$a[trpr_tx_qtde];
		$total_valor+=$a[trpr_tx_qtde];
		
		
	}
	
	$valores[]=array('','<b>TOTAL:</b>',"<b>".mostra_valor($total_valor)."</b>");

	grid::gerar($cabecalho,$valores);
	
	
	cactux::acao_botao('voltar','index');
	cactux::acao_botao('finaliza','finaliza_transferencia','id',"$_POST[id]");
	
	
	//$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 layout_produto(){
	global $a_mod;
	
	$a_tran=carregar('transferencia',"$_POST[id]");
//	$a_cida = carregar('transferencia,loja',$_POST[id]);
	
	//SE TIVER ATUALIZANDO, ENTAO CARREGA OS PRODUTOS JAH CADASTRADOS
	$sql=selecionar('trpr,produto,transferencia','trpr_nb_transferencia,tran_tx_status,trpr_tx_status',"$_POST[id],ativo,!inativo","",0);	
	
	
	cabecalho('Movimentação',3);
	
	cactux::abre_form();
	
	$t1[] = cactux::texto('Código:',$a_tran[tran_nb_id],1);
	$t1[] = cactux::texto('Origem/Destino:',$a_tran[tran_tx_nome],4);
	$t1[] = cactux::texto('Data:',data($a_tran[tran_tx_data],3),2);
	$t1[] = cactux::texto('Tipo:',$a_tran[tran_tx_tipo],2);
	$t2[] = cactux::texto('Obs:',$a_tran[tran_tx_obs],10);

	// LEMBRAR AQUI QUE PARA O COMBO_NET FUNCIONAR, TEM QUE EXISTIR OS CAMPOS DE VALOR,VALOR_CX, VLAOR_UN E FORMA
	$gravar=cactux::botao_submit('Gravar',2,'cadastra_produto','id,valor_prod,valor,valor_cx,valor_un,forma',"$_POST[id],0,0,0,0,0");
	
	$status=cactux::msg_status();
	
	//LIBERA O BOTAO FINALIZAR SOMENTE SE HOUVER NO MINIMO 1 PRODUTO
	// $a_teste1=carregar('listatransferencia','','list_nb_transferencia,list_tx_status',"$_POST[id],ativo");
	
	if(num_linhas($sql)>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],$t1[4]);
	cactux::linha_fieldset($t2[0]);
	cactux::fecha_fieldset();

	cactux::abre_fieldset('Informações dos Produtos');
	
	$produto = cactux::combo_net('!Material:','produto',$a_mod[prod_nb_id],$a_mod[prod_tx_nome],8,array('../combonet/busca_produto.php?c=produto2&t='.$a_tran[tran_nb_setor],'../combonet/busca_produto_net.php?c=produto&t='.$a_tran[tran_nb_setor]));	
//	$produto = cactux::combo_net('!Material:','campo_produto_',$a_mod[prod_nb_id],$a_mod[prod_tx_nome],6,array('busca_div.php?c=produto&t='.$a_tran[tran_nb_setor],'busca_net.php?c=produto&t='.$a_tran[tran_nb_setor]),"  onFocus=abre_proximo('div_produto_',".($i+1).")");
	//$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]),2," 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,MASCARA_VALOR);

		
//	cactux::campo_hidden('valor','');
//	cactux::campo_hidden('valor_cx','');
//	cactux::campo_hidden('valor_un','');
//	cactux::campo_hidden('forma','');
	cactux::linha_fieldset($produto,$qtde,$valor_un);
	cactux::linha_fieldset($voltar,$gravar,$finaliza,$status);

	cactux::fecha_fieldset();
	cactux::fecha_form();	


	$cabecalho[]=array('COD','PRODUTO','QUANTIDADE','');
	$cabecalho[]='c,e';
	$cabecalho[]='5%,,15%,2%';

	
	while( $a=carrega_array($sql) ) {

		$exclui = ".icone_excluir($a[0],'exclui_produto')";
		$valores[]=array(++$j,$a[prod_tx_nome],mostra_valor($a[trpr_tx_qtde]),$exclui);
		
		campo_hidden('id_trpr[]',$a[trpr_nb_id]);
		$id_trpr2[]=$a[trpr_nb_id];
		
		
		// $total_valor+=$a[trpr_tx_valor]*$a[trpr_tx_qtde];
		$total_valor+=$a[trpr_tx_qtde];
		
		
	}
	
	$valores[]=array('','<b>TOTAL:</b>',"<b>".mostra_valor($total_valor)."</b>",'');

	grid::gerar($cabecalho,$valores);
	
	
	cactux::acao_botao('voltar','index');
	cactux::acao_botao('finaliza','finaliza_transferencia','id',"$_POST[id]");
	
	
	//$valor_fim=cactux::campo('Valor Total:','valor_total',mostra_valor($total_total),2, MASCARA_VALOR);
	
	javascript("

	window.addEventListener('keydown', function(e) {
        if (e.keyIdentifier == 'U+000A' || e.keyIdentifier == 'Enter' || e.keyCode == 13) {
            if (e.target.nodeName == 'INPUT' && e.target.id == 'nome_produto') {
                e.preventDefault();
                return false;
            }
        }
    }, true);
	
	function valor_final(valor) {
		
		window.document.finaliza.valor_total_hidden2.value = gera_valor(valor);
		
		
	}
	
	");
	
	
	
	rodape();
	

}



function cadastra_transferencia() {

	if( !$_POST[id] ) {
		
		$hoje = date("Y-m-d H:i:s");
	
		$campos=array(tran_tx_nome,tran_tx_tipo,tran_tx_obs,tran_tx_status,tran_tx_data,tran_nb_user);
		$valores=array($_POST[nome],$_POST[tipo],$_POST[obs],'ativo',date("Y-m-d H:i:s"),$_SESSION[user_nb_id]);
		inserir('transferencia',$campos,$valores,1);
		$_POST[id]=ultimo_reg('transferencia');
	} else {
		$campos=array(tran_tx_nome,tran_tx_tipo,tran_tx_obs,tran_tx_status);
		$valores=array($_POST[nome],$_POST[tipo],$_POST[obs],'ativo');
		atualizar('transferencia',$campos,$valores,$a_tran[tran_nb_id]);
		

	}

	layout_produto();
	exit;
	
}

function layout_transferecia() {

	global $a_mod;
	
	cabecalho('Movimentação',2);

	cactux::abre_form();

	$c[] = cactux::combo('Tipo:','tipo',array('Entrada','Saída','Avaria'),$a_mod[tran_tx_tipo],2,"id=tipo onchange=muda_label()");
	$c[] = cactux::campo('<div id=label>&nbsp;</div>','nome',$a_mod[tran_tx_nome],6);
	$c[] = cactux::campo('Data:','data',date("d/m/Y (H:i:s)"),2,'disabled=disabled');
	$c[] = cactux::textarea('Observação:','obs',$a_mod[tran_tx_obs],10,5);
	
	$avancar=cactux::botao_submit('Avançar',2,'cadastra_transferencia','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($c[3]);
	cactux::linha_fieldset($voltar,$avancar,$status);
	cactux::fecha_fieldset();
	
	cactux::fecha_form();
	
	cactux::acao_botao('voltar','index');

	javascript("
		window.onload = muda_label();
		
		function muda_label(){
			var e = document.getElementById(\"tipo\");
		
			var text = e.options[e.selectedIndex].text;

			
			if(text == 'Entrada'){
				document.getElementById(\"label\").innerHTML='Origem:';
			}
			if(text == 'Saída'){
				document.getElementById(\"label\").innerHTML='Destino:';
			}
			if(text == 'Avaria'){
				document.getElementById(\"label\").innerHTML='Fornecedor:';
			}
				
		}

	");
	
}

function index(){


	if( $_POST[busca_data1] )
		$extra .= " AND tran_tx_data >= '".gera_data($_POST[busca_data1],1)." 00:00:00'";
	if( $_POST[busca_data2] )
		$extra .= " AND tran_tx_data <= '".gera_data($_POST[busca_data2],1)." 23:59:59'";
	if( $_POST[busca_nome] ){
		$extra .= " AND tran_tx_nome LIKE '%$_POST[busca_nome]%'";
	}
	if( $_POST[busca_cod] )
		$extra .= " AND tran_nb_id = '$_POST[busca_cod]'";

	cabecalho('Movimentação',2);
	
	cactux::abre_form();
	
	//CAMPOS
//	$c[] = cactux::combo_net('Fornecedor:','busca_fornecedor',$a_mod[enti_nb_id],$a_mod[enti_tx_nome],4,array('busca_div.php?c=entidade','busca_net.php?c=entidade'));
	$c[] = cactux::campo('Código:','busca_cod',$_POST[busca_cod],2);
	$c[] = cactux::campo('Origem/Destino:','busca_nome',$_POST[busca_nome],4);
	$c[] = cactux::campo('Data Inicial:','busca_data1',$_POST[busca_data1],2,MASCARA_DATA);
	$c[] = cactux::campo('Data Final:','busca_data2',$_POST[busca_data2],2,MASCARA_DATA);
	
	//BOTOES
	$buscar = cactux::botao_submit_busca('Buscar',2,'index');
	$inserir = cactux::botao('Inserir',2,'inserir');
	$status = cactux::msg_status();
	
	cactux::abre_fieldset('Filtro de Busca');
	cactux::linha_fieldset($c[0],$c[1],$c[2],$c[3],$c[4]);
	cactux::linha_fieldset($buscar,$inserir,$imprimir_busca,$status);
	cactux::fecha_fieldset();
	
	$sql=selecionar('transferencia','tran_tx_status',"!inativo"," $extra ORDER BY tran_nb_id DESC",1);
	$BUSCA = grid::gerar_paginacao($sql,'','',30);
	
	$cabecalho[]=array('CÓD','DATA','ORIGEM/DESTINO','TIPO','SITUAÇÃO','','','');
	$cabecalho[]='c,c,e,e,e,c,c,c';
	$cabecalho[]='5%,20%,,10%,10%,2%,2%,2%,2%';
	
	while($a=carrega_array($BUSCA[0])){
	
		
		$imprimir = ".icone_modificar($a[0],'layout_imprimir','','','','target=_blank','','/cactus/imagens/imprimir.png')";
		if($a[tran_tx_status]!='encerrado'){
			$modificar = ".icone_modificar($a[0],'modifica_transferencia')";
			$excluir = ".icone_excluir($a[0],'exclui_transferencia')";
		}
		
		$valores[]=array($a[tran_nb_id],data($a[tran_tx_data],3),$a[tran_tx_nome],$a[tran_tx_tipo],$a[tran_tx_status],$imprimir,$modificar,$excluir);
	
	}
	
	
	cactux::fecha_form();
	
	cactux::acao_botao('inserir','layout_transferecia');
	cactux::acao_botao('imprimir_busca','layout_imprimi_busca','','','','',' target=_blank');
	grid::gerar($cabecalho,$valores);
	grid::paginar($BUSCA);
	
	rodape();
	
	cactux::acao_botao('faz_pagamento_form','seleciona_layout_finaliza','ids_agrupados','0');
	
	
	
}


controle();
?>