<?php
include "../../funcs.php";
include "../../../libs/ext_funcs/soap_marisa/soapclient.php";
ini_set("soap.wsdl_cache_enabled", 0);
cssz();
?>
<html>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="../../padrao/css/estilos.css" rel="stylesheet" type="text/css"></style>
<script type="text/javascript"> djConfig = { isDebug: false }; </script>
<script type="text/javascript" src="../../../Comp_WMS/dojo/dojo.js"></script>
<style type="text/css">
<!--
body {
 margin-left: 0px;
 margin-top: 0px;
 margin-right: 0px;
 margin-bottom: 0px;
}
-->
</style>
<?
echo '<form name="tabdefccons" method="post"';
echo '  action="selects.php">';
echo ' <input type=hidden name="importar" value="1">';
echo ' <input type=hidden name="pag" value="'.$_REQUEST['pag'].'">';
echo ' <input type=hidden name="tela" value="1">';

if(isset($_REQUEST['importar'])){
	$msg = '';
	//if($_REQUEST['tela']==0){
	//	montaTela($msg,$con);
	//}else{
		/*
		if(trim($_REQUEST['alias'])==''){
			$msg = 'Falta Preecher Alias';
			montaTela($msg,$con);
		}elseif(trim($_REQUEST['tipodoc'])==''){
			$msg = 'Falta Preecher Tipo Documento';
			montaTela($msg,$con);
		}else{
			importar($con,$_REQUEST['alias'],$_REQUEST['tipodoc']);
		}
		*/
		$sql_param = "SELECT PARAM_ID, PARAM_VALOR
								FROM param
							WHERE EMPRES_CODIGO = '{$_SESSION['Pempresa']}'
							AND FILIAL_CODIGO = '{$_SESSION['Pfilial']}'
							AND PARAM_ID = 'alias_marisa'
							OR PARAM_ID = 'tipodoc_marisa'";
		$res_param = tw_query($sql_param, $con);
		while($row_param = tw_fetch_row($res_param)){
			$ar_param[$row_param[0]]=$row_param[1];
		}
		//importar($con,$ar_param['alias_marisa'],$ar_param['tipodoc_marisa']);
		importar($con);
	//}
}
if(isset($_REQUEST['exportar']) and trim($_REQUEST['exportar'])==1){
	exportar($con);
}

function montaTela($msg,$con){
	$sql_param = "SELECT PARAM_ID, PARAM_VALOR
							FROM param
						WHERE EMPRES_CODIGO = '{$_SESSION['Pempresa']}'
						AND FILIAL_CODIGO = '{$_SESSION['Pfilial']}'
						AND PARAM_ID = 'alias_marisa'
						OR PARAM_ID = 'tipodoc_marisa'";
	$res_param = tw_query($sql_param, $con);
	while($row_param = tw_fetch_row($res_param)){
		$ar_param[$row_param[0]]=$row_param[1];
	}
	echo '<table border="0" bordercolor="#000000" align=center width="101.6%">';
	echo '    <tr> ';
	echo '      <td class="de1" align=right border="0" width="40%">';
	echo '         <a>  ';
	echo '         <b>Alias : </a>';
	echo '      </td> ';
	echo '      <td class="de1" align=left border="0" width="60%">';
	echo '         <input class="menor" type="text" name="alias" size="22" maxlength="20"  value="'
					   .trim($ar_param['alias_marisa']).'"></input>';
	echo '      </td> ';
	echo '    </tr> ';
	echo '    <tr> ';
	echo '      <td class="de1" align=right border="0" width="40%">';
	echo '         <a>  ';
	echo '         <b>Tipo Documento : </a>';
	echo '      </td> ';
	echo '      <td class="de1" align=left border="0" width="60%">';
	echo '         <input class="menor" type="text" name="tipodoc" size="22" maxlength="20"  value="'
					   .trim($ar_param['tipodoc_marisa']).'"></input>';
	echo '      </td> ';
	echo '    </tr> ';
	echo '    <tr> ';
	echo '      <td class="de1" colspan=2 align=center border="0" width="40%">';
	echo '        <b>'.$msg.'<br>';
	echo tw_button2('Importar','document.forms[0].submit();');
	echo '      </td> ';
	echo '    </tr> ';
	echo '</table>';
}

function soapCon($con,$param=''){
	upgradeToNewProvider($con);
	$soapConnection = new MarisaSoapClient();
	$soapConnection->setWSDL_getDocs(getParam($con, 'wsdl_getdocs'));
	$soapConnection->setWSDL_setStatus(getParam($con, 'wsdl_setstatus'));
	$soapConnection->setWSDL_sendDocs(getParam($con, 'wsdl_senddocs'));
	$soapConnection->setLocation(getParam($con, 'location'));
	$soapConnection->setUri(getParam($con, 'location'));
	$soapConnection->setUser(getParam($con, 'user_cnpj'));
	$soapConnection->setPassword(getParam($con, 'user_pass'));
	$soapConnection->setProxyHost(getParam($con, 'proxyhost'));
	$soapConnection->setProxyPort(getParam($con, 'proxyport'));
	$soapConnection->setProxyUser(getParam($con, 'proxyuser'));
	$soapConnection->setProxyPass(getParam($con, 'proxypass'));
	$soapConnection->useNusoap(getParam($con, 'usenusoap'));
	return $soapConnection;
}

function upgradeToNewProvider($con){
	$select = "
		select count(*)
		  from param
		 where EMPRES_CODIGO = '{$_SESSION['Pempresa']}'
		   and FILIAL_CODIGO = '{$_SESSION['Pfilial']}'
		   and PARAM_ID = 'fix0003'
	";
	$query = tw_query($select, $con);
	$row   = tw_fetch_row($query);
	if($row[0]=='0'){ ?><center>
		<body>
		<h3 style="background-color:orange;">Atualização do Software</h3>
		<p style="font-weight:bold;">O Software foi atualizado e será necessária a confirmação do CNPJ e Senha.</p>
		</center>
		</form>
		<form action="up_provider.php" method="post" name="frm_upprov" id="frm_upprov">
			<label>CNPJ: </label>
			<input type="text" name="edt_cnpj" value="" class="menor" style="width:200px;"><font size="2px" color=gray>(Apenas números)</font><br>
			<label>Senha: </label>
			<input type="password" name="edt_password" value="" class="menor" style="width:150px;">
			<br><br>
			<center><a href="javascript:document.getElementById('frm_upprov').submit();"><?=tw_button('Salvar')?></a></center>
		</form>
		</body>
	<? exit;}
}

function getParam($con, $id){
	$select = "
		select PARAM_VALOR
		  from param
		 where EMPRES_CODIGO = '{$_SESSION['Pempresa']}'
		   and FILIAL_CODIGO = '{$_SESSION['Pfilial']}'
		   and PARAM_ID = '$id'
	";
	$query = tw_query($select, $con);
	$row   = tw_fetch_row($query);
	return $row[0];
}

function importar($con){
	$marisaConnection = soapCon($con);
	while($ret = $marisaConnection->getNextDocument()){
	//$ret = $marisaConnection->getNextDocument();
		$ar_doccab = $ret['documento'];
		$ar_docitm = $ret['itens'];
		$marisaConnection->setStatus($ret['docnum']);
		$empres_codigo = $_SESSION['Pempresa'];
		$filial_codigo = $_SESSION['Pfilial'];
		$doccab_seqdoc = $ar_doccab['ID_MENSAGEM'];
		$doctip_codigo = $ar_doccab['TIPO_MENSAGEM'];
		$doccab_localorigem = $ar_doccab['LOCAL_ORIGEM'];
		$doccab_localdestino = $ar_doccab['LOCAL_DESTINO'];
		if(!empty($ar_doccab['DATA'])){
			$doccab_data = $ar_doccab['DATA'];
		}else{
			$doccab_data = date('Ymd');
		}
		$doccab_numero = $ar_doccab['NUMERO_SOLICITACAO'];
		$doccab_numeroext = $ar_doccab['EXTENSAO_SOLICITACAO'];
		$doccab_loja = $ar_doccab['LOJA'];
		$doccab_numerosubst = $ar_doccab['SOLICITACAO_SUBST'];
		$doccab_numeropedido = $ar_doccab['NUMERO_PEDIDO'];
		$doccab_backorder = $ar_doccab['NUMERO_BACKORDER'];
		$doccab_estilo = $ar_doccab['CODIGO_ESTILO'];
		$doccab_localimpressao = $ar_doccab['LOCAL_IMPRESSAO'];
		$doccab_razaosocial = $ar_doccab['RAZAO_SOCIAL'];
		$doccab_cnpj = $ar_doccab['CNPJ_LOCAL_IMPRESSAO'];
		$doccab_numerosemana = $ar_doccab['NUMERO_SEMANA'];
		$doccab_tipoetiqueta = $ar_doccab['TIPO_ETIQUETA'];
		$doccab_layoutetiqueta = $ar_doccab['LAYOUT_ETIQUETA'];
		$doccab_tipoevento = $ar_doccab['TIPO_EVENTO'];
		$doccab_datalimite = $ar_doccab['DATA_ENTREGA'];
		$doccab_dataemissao = $ar_doccab['DATA_SOLICITACAO'];
		$sql = "SELECT DOCCAB_SEQ
						FROM doccab
					WHERE EMPRES_CODIGO = '$empres_codigo'
					AND FILIAL_CODIGO = '$filial_codigo'
					AND DOCCAB_SEQDOC = '$doccab_seqdoc'
					AND DOCTIP_CODIGO = '$doctip_codigo'
					AND DOCCAB_NUMERO = '$doccab_numero'
					AND DOCCAB_NUMEROEXT = '$doccab_numeroext'
					AND DOCCAB_NUMEROPEDIDO = '$doccab_numeropedido'";
		$res = tw_query($sql, $con);
		$row = tw_fetch_row($res);
		//echo '<pre> select = '.$sql.'<br>';
		if(trim($row[0]) == ''){
			$insert_doccab = "INSERT INTO doccab (EMPRES_CODIGO, FILIAL_CODIGO, DOCCAB_SEQDOC, DOCTIP_CODIGO, DOCCAB_LOCALORIGEM,
									DOCCAB_LOCALDESTINO, DOCCAB_DATA, DOCCAB_NUMERO, DOCCAB_NUMEROEXT, DOCCAB_LOJA, DOCCAB_NUMEROSUBST,
									DOCCAB_NUMEROPEDIDO, DOCCAB_BACKORDER, DOCCAB_ESTILO, DOCCAB_LOCALIMPRESSAO, DOCCAB_RAZAOSOCIAL,
									DOCCAB_CNPJ, DOCCAB_NUMEROSEMANA, DOCCAB_TIPOETIQUETA, DOCCAB_LAYOUTETIQUETA, DOCCAB_TIPOEVENTO,
									DOCCAB_DATALIMITE, DOCCAB_DATAEMISSAO, DOCCAB_STATUS, DOCCAB_ENVIADOS)
									VALUES ('$empres_codigo', '$filial_codigo', '$doccab_seqdoc', '$doctip_codigo', '$doccab_localorigem',
									'$doccab_localdestino', '$doccab_data', '$doccab_numero', '$doccab_numeroext', '$doccab_loja', '$doccab_numerosubst',
									'$doccab_numeropedido', '$doccab_backorder', '$doccab_estilo', '$doccab_localimpressao', '$doccab_razaosocial',
									'$doccab_cnpj', '$doccab_numerosemana', '$doccab_tipoetiqueta', '$doccab_layoutetiqueta', '$doccab_tipoevento',
									'$doccab_datalimite', '$doccab_dataemissao', '1',0)";
			//echo '<br><pre>'.$insert_doccab;
			tw_query($insert_doccab, $con);
			$last_id = tw_last_id('doccab', 'DOCCAB_SEQ');
			foreach($ar_docitm as $prod => $valor){
				$prdcad_codigo = $valor['CODIGO'];
				$docitm_prdcaddigito = $valor['DIGITO'];
				$docitm_coordenados = $valor['COORDENADOS'];
				$docitm_prdcaddescr = $valor['DESCRICAO'];
				$docitm_tema = $valor['TEMA'];
				$setor_codigo = $valor['SETOR'];
				$docitm_tamanho = $valor['TAMANHO'];
				$docitm_secao = $valor['SECAO'];
				$docitm_faixas = $valor['FAIXAS']['VALUE'];
				$docitm_faixapreco = $valor['FAIXAS']['FAIXA_PRECO'];
				$docitm_precode = $valor['FAIXAS']['PRECO_DE'];
				$docitm_precopor = $valor['FAIXAS']['PRECO_POR'];
				$docitm_qde = intval($valor['FAIXAS']['QUANTIDADE']);
				$docitm_subsetor = $valor['SUBSETOR'];
				$docitm_cor = $valor['COR'];
				$docitm_enderecamento = $valor['ENDERECAMENTO'];

				$insert_docitm = "INSERT INTO docitm (EMPRES_CODIGO, FILIAL_CODIGO, DOCCAB_SEQ, PRDCAD_CODIGO, DOCITM_PRDCADDIGITO,
										DOCITM_COORDENADOS, DOCITM_PRDCADDESCR, DOCITM_TEMA, SETOR_CODIGO, DOCITM_TAMANHO,
										DOCITM_SECAO, DOCITM_FAIXAS, DOCITM_FAIXAPRECO, DOCITM_PRECODE, DOCITM_PRECOPOR, DOCITM_QDE,
										DOCITM_STATUS, DOCITM_SUBSETOR, DOCITM_COR, DOCITM_ENDERECAMENTO)
										VALUES('$empres_codigo', '$filial_codigo', '$last_id', '$prdcad_codigo', '$docitm_prdcaddigito',
										'$docitm_coordenados', '$docitm_prdcaddescr', '$docitm_tema', '$setor_codigo', '$docitm_tamanho',
										'$docitm_secao', '$docitm_faixas', '$docitm_faixapreco', '$docitm_precode', '$docitm_precopor',
										'$docitm_qde', '1', '$docitm_subsetor', '$docitm_cor', '$docitm_enderecamento')";
				//echo '<br><pre>'.$insert_docitm;
				tw_query($insert_docitm, $con);
			}
			unset($ar_doccab,$ar_docitm);
		}else{
			echo 'Documento(s) já foram importados ID_Mensagem: '.$doccab_seqdoc.' Número Solicitação: '.$doccab_numero.'<br>';
		}
	}
	echo '<table border="0" bordercolor="#000000" align=center width="101.6%">';
	echo '    <tr>';
	echo '      <td class="ca3" align=Left height="10" border="0" width="101.6%">';
	echo '         <a href=tabseparacao1.php?cod='.$_REQUEST['pag'].'&pag='.$_REQUEST['pag'].'><img src="'.$_SESSION['sc_main_path'].'/Comp_WMS/icones/voltar.png" class="iconav" border=0></a>';
	echo '   Fim da Operação';
	echo '      </td>';
	echo '    </tr>';
	echo '<table>';
}

function exportar($con){
	$marisaConnection = soapCon($con,'rec');
	$sql_param = "SELECT PARAM_ID, PARAM_VALOR
							FROM param
						WHERE EMPRES_CODIGO = '{$_SESSION['Pempresa']}'
						AND FILIAL_CODIGO = '{$_SESSION['Pfilial']}'
						AND PARAM_ID = 'alias_marisarec'
						OR PARAM_ID = 'tipodoc_marisarec'";
	$res_param = tw_query($sql_param, $con);
	//echo '<pre>'.$sql_param;exit;
	while($row_param = tw_fetch_row($res_param)){
		$ar_param[$row_param[0]]=$row_param[1];
	}

	$sql = "SELECT DOCCAB_SEQDOC c0
				, DOCTIP_CODIGO c1
				, DOCCAB_LOCALORIGEM c2
				, DOCCAB_LOCALDESTINO c3
				, DOCCAB_NUMERO c4
				, DOCCAB_NUMEROEXT c5
				, DOCCAB_LOJA c6
				, DOCCAB_DATAOCORRENCIA c7
				, DOCCAB_QTDREIMPR c8
				, DOCCAB_MOTREIMPR c9
				, DOCCAB_SEQ c10
					FROM doccab
				WHERE EMPRES_CODIGO = '{$_SESSION['Pempresa']}'
				AND FILIAL_CODIGO = '{$_SESSION['Pfilial']}'
				AND DOCCAB_STATUS = 8
				AND DOCCAB_ENVIADOS <> 1";
	$res = tw_query($sql, $con);
	while($row = tw_fetch_row($res)){
		$xml.="
				<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>
				<retorno_etiqueta>
				<header>
					<id_mensagem>$row[0]</id_mensagem>
					<tipo_mensagem>$row[1]</tipo_mensagem>
					<local_origem>$row[2]</local_origem>
					<local_destino>$row[3]</local_destino>
				</header>
				<data>
					<numero_solicitacao>$row[4]</numero_solicitacao>
					<extensao_solicitacao>$row[5]</extensao_solicitacao>
					<loja>$row[6]</loja>";
		if(intval($row[8]) > 0){
			$xml.="<data_ocorrencia>$row[7]</data_ocorrencia>
					<quantid_reimpr>$row[8]</quantid_reimpr>
					<motivo_reimpr>$row[9]</motivo_reimpr>
				</data>";
		}else{
			$xml.="</data>";
		}
		$xml.="</retorno_etiqueta>";
		$xml=preg_replace(array("/\t/","/\r/","/\n/"),"",$xml);
		$marisaConnection->sendDocument($ar_param['alias_marisarec'],$ar_param['tipodoc_marisarec'],$xml);
		$up_doccab = "UPDATE doccab SET DOCCAB_ENVIADOS = 1
							WHERE DOCCAB_SEQ = $row[10]";
		tw_query($up_doccab,$con);
	}
	echo 'Fim da Operação';
	echo '<table border="0" bordercolor="#000000" align=center width="101.6%">';
	echo '    <tr>';
	echo '      <td class="ca3" align=Left height="10" border="0" width="101.6%">';
	echo '         <a href=tabseparacao1.php?cod='.$_REQUEST['pag'].'&pag='.$_REQUEST['pag'].'><img src="'.$_SESSION['sc_main_path'].'/Comp_WMS/icones/voltar.png" class="iconav" border=0></a>';
	echo '      </td>';
	echo '    </tr>';
	echo '<table>';
}
?>
