<?php 
use_helper('UrlFunctions'); 
use_helper('UtilFunctions'); 

$o_ArTipoproductoFN = new ArTipoproductoFN();
$o_ArTipoproductoFN->setEliminado(-1);
$a_o_ArTipoproductoFN = $o_ArTipoproductoFN->select();


$o_BalanceDiaNew = new BalanceDiaBean();
$o_BalanceDiaNew->setIdSucursal($Idsucursal); 


$o_BalanceDiaNewDP 		= new BalanceDiaDP($o_BalanceDiaNew);
$fechaBalanceAbierto  	= $o_BalanceDiaNewDP->ObtenerDiaAbierto();

if($fechaBalanceAbierto != $fecha) exit("No se puede hacer esta operacion por fecha de dia abierto.");

$o_ArArqueoDetalleProductoFN = new ArArqueoDetalleProductoFN();
$o_ArArqueoDetalleProductoFN->setIdclase($Idclase);
$o_ArArqueoDetalleProductoFN->setIdsucursal($Idsucursal);
$o_ArArqueoDetalleProductoFN->setIdmercado($Idmercado);
$o_ArArqueoDetalleProductoFN->setIdcolaborador($Idcolaborador);
$o_ArArqueoDetalleProductoFN->setFecha($fecha);
$o_ArArqueoDetalleProductoFN->setIdcliente($Idcliente);
$o_ArArqueoDetalleProductoFN->setIdprestamo($Idprestamo);
$o_ArArqueoDetalleProductoFN->setCorrelativo($correlativo);
$a_o_ArArqueoDetalleProductoBN = $o_ArArqueoDetalleProductoFN->selectByPK();



$o_BalanceDiaNew = new BalanceDiaBean();
$o_BalanceDiaNew->setIdColaboradorPermitido($a_Colaborador); 
$o_BalanceDiaNew->setIdAdministrador($IdPadre); 
$o_BalanceDiaNew->setIdSucursal($IdSucursal); 


$o_BalanceDiaNewDP 		= new BalanceDiaDP($o_BalanceDiaNew);
$fechaBalanceAbierto  	= $o_BalanceDiaNewDP->ObtenerDiaAbierto();




//print_r($a_valorFN_B);

?>

<script>


function hola(){
	alert('ok');
}
function cargandoImagenSerch(){
	disabledWin.setPathImage('/images/common/progress.gif');
	disabledWin.show(true,true,'resultGrtid');
}

function buscarDetallePrestamo(idCliente){
	url = "<?=buildUrl('arqueo/gridPrestamo', "block=".$block)?>";
	var pars = $('form1').serialize();
	var str = pars+'&idcliente='+idCliente;
	var myAjax  = new Ajax.Updater(
    	"resultGrtid",
    	url,
    	{
    		asynchronous:	true,
    		method			: 'get',
    		parameters	: str,
    		evalScripts	: true,
    		onLoading   : cargandoImagenSerch(),
    		onComplete	: function(){
    			//objMainTab.showMenu();
    		}
    	})
	
}
	
actualizaJSON = function(request, json){
	  var numeroElementos = json.length;
	  for (var i = 0; i < numeroElementos; i++){
	    if($(json[i][0])){
	  	  switch ($(json[i][0]).tagName){
	  	    case 'TD'      : Element.update(json[i][0], json[i][1]); break;
	  	    case 'INPUT'   : $(json[i][0]).value=json[i][1]; break;
	  	    case 'SELECT'  : 
	  	      var objDDL = $(json[i][0]);
	  	      if(typeof(cont) == 'undefined'){
	  	        var cont = 0;
	  	        objDDL.options.length = 1;
	  	      }
	  	      var a_contentValues = json[i][1].split("_;_");
	      	  var value	= a_contentValues[0];
	      	  var text	= a_contentValues[1];
	      	  var selct	= a_contentValues[2];
	      	  if( selct == 'selected'){
	      	  	alert('xxxxxxxxxxxxxxxxxxxxxx'+value);
	  	      	var option	= new Option(text,value,"defauldSelected");
	      	  }else{
	      	  	var option	= new Option(text,value);
	      	  }
	      		try{
	      			objDDL.add(option,null);
	      		}catch (e){
	      			objDDL.add(option,-1);
	      		}
	  	      cont++;
	  	    break;
	  	  }
	    }else{
	      if(json[i][0].indexOf("function") > -1){
	        eval("scriptEval = "+json[i][0]);
	        scriptEval();
	      }
	    }
	  }
	}
	
	function limpiarDatos(){
		$('resultGrtid').innerHTML='';
		$('CodigoItem').value='';
	}
	
</script>
<?php
//echo myUser::getUser()->getRoleId();
//error_reporting(E_ALL);
//ini_set('display_errors','On'); //PARA PRODUCCION "Off"

if(isset($control)){
	
  	$montoTotalAnterior = $a_o_ArArqueoDetalleProductoBN->getSubtotal();
  	$idPrestamo = $a_o_ArArqueoDetalleProductoBN->getIdprestamo();
  	$idPago = $a_o_ArArqueoDetalleProductoBN->getIdpagoreferencia();
  	
  	$o_PrestamoBean = new PrestamoBean();
  	$o_PrestamoBean->setIdPrestamo($idPrestamo);
  	
  	$o_PrestamoDP = new PrestamoDP($o_PrestamoBean);
  	$a_o_PrestamoDP = $o_PrestamoDP->select();
  	if(is_array($a_o_PrestamoDP)){
  		foreach ($a_o_PrestamoDP as $key => $o_PrestamoDP){
  			$saldoPrestamo = $o_PrestamoDP->getSaldoPrestamo();
  			$MontoTotalPrestamo = $o_PrestamoDP->getMontoTotal();
  		}
  	}else{
  		exit("No se encuentar prestamo valido");
  	}
  	
  	if($montoActual <= 0){
  		exit("El monto debe ser mayor a 0.00");
  	}
  	
  	if(!$Idcliente){
  		exit("No se puede realizar esta operacion no hay cliente");
  	}
  	//Verificar o validar si con el pago en el Prestamo no rebasa
  	
	if($montoTotalAnterior < $montoActual){
		if($saldoPrestamo < ($montoActual - $montoTotalAnterior)  ){
			exit("No se puede porque el pago excede el saldo del prestamo");
		}
	}
  	//PAso las validaciones asi que se guardara el log
	if($montoActual){
		
		$o_ArArqueoDetalleProductoDP = new ArArqueoDetalleProductoDP();
		$o_ArArqueoDetalleProductoDP->setIdclase($a_o_ArArqueoDetalleProductoBN->getIdclase());
		$o_ArArqueoDetalleProductoDP->setIdsucursal($a_o_ArArqueoDetalleProductoBN->getIdsucursal());
		$o_ArArqueoDetalleProductoDP->setIdmercado($a_o_ArArqueoDetalleProductoBN->getIdmercado());
		$o_ArArqueoDetalleProductoDP->setIdcolaborador($a_o_ArArqueoDetalleProductoBN->getIdcolaborador());
		$o_ArArqueoDetalleProductoDP->setFecha($a_o_ArArqueoDetalleProductoBN->getFecha());
		$o_ArArqueoDetalleProductoDP->setIdcliente($a_o_ArArqueoDetalleProductoBN->getIdcliente());
		$o_ArArqueoDetalleProductoDP->setIdprestamo($a_o_ArArqueoDetalleProductoBN->getIdprestamo());
		$o_ArArqueoDetalleProductoDP->setCorrelativo($a_o_ArArqueoDetalleProductoBN->getCorrelativo());
		$o_ArArqueoDetalleProductoDP->setSubtotal($a_o_ArArqueoDetalleProductoBN->getSubtotal());
		
		
		$o_ArArqueoDetalleProductoDP->setCantidad($a_o_ArArqueoDetalleProductoBN->getCantidad());
		$o_ArArqueoDetalleProductoDP->setPreciounitario($a_o_ArArqueoDetalleProductoBN->getPreciounitario());
		$o_ArArqueoDetalleProductoDP->setIdtipoproducto($a_o_ArArqueoDetalleProductoBN->getIdtipoproducto);
		$o_ArArqueoDetalleProductoDP->setDecripcionproducto($a_o_ArArqueoDetalleProductoBN->getDecripcionproducto());
		$o_ArArqueoDetalleProductoDP->setDescripciontipoproducto($a_o_ArArqueoDetalleProductoBN->getDescripciontipoproducto());
		$o_ArArqueoDetalleProductoDP->setNombrecliente($a_o_ArArqueoDetalleProductoBN->getNombrecliente());
		$o_ArArqueoDetalleProductoDP->setFecharegistro($a_o_ArArqueoDetalleProductoBN->getFecharegistro());
		$o_ArArqueoDetalleProductoDP->setUsuarioregistro($a_o_ArArqueoDetalleProductoBN->getUsuarioregistro());
		$o_ArArqueoDetalleProductoDP->savelog();
		
		
		$o_ArArqueoDetalleProductoDP = new ArArqueoDetalleProductoDP();
		$o_ArArqueoDetalleProductoDP->setIdclase($Idclase);
		$o_ArArqueoDetalleProductoDP->setIdsucursal($Idsucursal);
		$o_ArArqueoDetalleProductoDP->setIdmercado($Idmercado);
		$o_ArArqueoDetalleProductoDP->setIdcolaborador($Idcolaborador);
		$o_ArArqueoDetalleProductoDP->setFecha($fecha);
		$o_ArArqueoDetalleProductoDP->setIdcliente($Idcliente);
		$o_ArArqueoDetalleProductoDP->setIdprestamo($Idprestamo);
		$o_ArArqueoDetalleProductoDP->setCorrelativo($correlativo);
		$o_ArArqueoDetalleProductoDP->setSubtotal($montoActual);
		$o_ArArqueoDetalleProductoDP->setCantidad($cantidad);
		$o_ArArqueoDetalleProductoDP->setPreciounitario(($montoActual/$cantidad));
		$o_ArArqueoDetalleProductoDP->setIdtipoproducto($IdTipoProducto);
		$o_ArArqueoDetalleProductoDP->setDecripcionproducto(addslashes($descripcionproducto));
		$o_ArArqueoDetalleProductoDP->setFecharegistro(date("Y-m-d H:i:s"));
		$o_ArArqueoDetalleProductoDP->setUsuarioregistro(myUser::getUser()->getUserId());
		$o_ArArqueoDetalleProductoDP->update();
		
		//Ahora se consulta los detalles de´para actualizar el total
		$o_ArArqueoDetalleProductoFN = new ArArqueoDetalleProductoFN();
		$o_ArArqueoDetalleProductoFN->setIdclase($Idclase);
		$o_ArArqueoDetalleProductoFN->setIdsucursal($Idsucursal);
		$o_ArArqueoDetalleProductoFN->setIdmercado($Idmercado);
		$o_ArArqueoDetalleProductoFN->setIdcolaborador($Idcolaborador);
		$o_ArArqueoDetalleProductoFN->setFecha($fecha);
  		$a_o_ArArqueoDetalleProductoFN = $o_ArArqueoDetalleProductoFN->select();
		if(is_array($a_o_ArArqueoDetalleProductoFN)){
			foreach ($a_o_ArArqueoDetalleProductoFN as $key => $o_ArArqueoDetalleProductoFN){
				$nuevoMontoTotal += $o_ArArqueoDetalleProductoFN->getSubtotal();
			}
		}
  		//Ahora actualiza el total de la cabecera
		$o_ArArqueoCabeceraDP = new ArArqueoCabeceraDP();
		$o_ArArqueoCabeceraDP->setIdclase($Idclase);
		$o_ArArqueoCabeceraDP->setIdsucursal($Idsucursal);
		$o_ArArqueoCabeceraDP->setIdmercado($Idmercado);
		$o_ArArqueoCabeceraDP->setIdcolaborador($Idcolaborador);
		$o_ArArqueoCabeceraDP->setFecha($fecha);
		$o_ArArqueoCabeceraDP->setTotal($nuevoMontoTotal);
		$o_ArArqueoCabeceraDP->update();
		//Actualizar el Pago
		$o_PagoBean = new PagoBean();
		$o_PagoBean->setIdPago($idPago);
		$o_PagoBean->setMontoPago($montoActual);
		$o_PagoBean->setFechaModificacion(date('Y-m-d H:i:s'));
		$o_PagoBean->setUsuarioModificacion(myUser::getUser()->getUserId());
		$o_PagoDP = new PagoDP($o_PagoBean);
		$o_PagoDP->update();
		
		//Actualizar el Pago
		$o_PagoBean = new PagoBean();
		$o_PagoBean->setIdPrestamo($idPrestamo);
		$o_PagoDP = new PagoDP($o_PagoBean);
		$a_o_PagoBN = $o_PagoDP->select();
		if(is_array($a_o_PagoBN)){
			foreach ($a_o_PagoBN as $key => $o_PagoBN){
				$SumaMontoPago += $o_PagoBN->getMontoPago();
			}
		}
		
		$saldoActual = $MontoTotalPrestamo - $SumaMontoPago;
		// Actualizar el Saldo del Prestamo
		$o_PrestamoBean = new PrestamoBean();
		$o_PrestamoBean->setIdPrestamo($idPrestamo);
		$o_PrestamoBean->setSaldoPrestamo($saldoActual);
		if($saldoActual==0) $o_PrestamoBean->setEstado("C");
		else $o_PrestamoBean->setEstado("P"); 
		$o_PrestamoBean->setUsuarioModificacion(myUser::getUser()->getUserId());
		$o_PrestamoBean->setFechaModificacion(date('Y-m-d H:i:s'));
		$o_PrestamoDP = new PrestamoDP($o_PrestamoBean);
		$bResult = $o_PrestamoDP->update();
  	}  	
  	$id_key = "Idclase=".$Idclase."&Idsucursal=".$Idsucursal."&Idmercado=".$Idmercado."&Idcolaborador=".$Idcolaborador."&fecha=".$fecha;
  	
  	
  	
  
    if(1)
    {
           ?>
            <script language="JavaScript">
             
             parent.recarga();
             parent.objMainTab.windowsCloseAll(); 
             //parent.objMainTab.reqBody('<?=buildUrl('arqueo/editProducto',$id_key)?>');
    		 
            </script>
            <?
        
        exit;
    }
    else
    {
        //$url = buildUrl('cli/add', "block=".$block."&error=1");
        echo '<div class="ui-widget" style="margin: 2px;"><div class="ui-state-error ui-corner-all" style="padding: 0 .7em;"><p><span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span><strong>Error:</strong>Error en actualizar el cliente.</p></div></div>';
    }
}


//if(is_array($a_ObjectBean)){
if(1){
  //while(list($key,$o_ObjectBean) = each($a_ObjectBean)){
  	
  	
  	
	
?>
<table class="cuerpo" width="100%" border="0" cellpadding="0" cellspacing="0">
	
	<tr>
		<td valign="top">
			 <form id="form1" name="form1" method="POST">
				<input type="hidden" name="control" value="1">
				<input type="hidden" name="CodigoItem"  id="CodigoItem" value="">
			  
                        <?php
                        $s_Param = '';
                        if( isset( $id ) )
                        {
                            $s_Param = 'id='.$id;
                        }
                        ?>
			  
                        <table border="0" cellpadding="0" cellspacing="0" width="100%">
							<tr>
							  <td class="titleBody"><li>&nbsp;&nbsp;Editar Producto</li></td>
							  <td align="right" valign="baseline">
							    
							  </td>
							</tr>
						</table>
			  
                        <table width="100%" cellspacing="2" cellpadding="2" border="0" class="marco">
                            <tr>
                                <td nowrap="nowrap">
                                    
                                        
                                    	<table width="100%">
                                    	
                                            <tr>
                                                <td >
    
                                                    <table width="100%" cellpadding="5" border="0" align="left">
                                                    	<tr>
                                                          <td align="left" width="10%"><label class="label">Tipo</label></td>
                                                          <td align="left" id="">
                                                          	<select class="combo validate-selection" name="IdTipoProducto" id="IdTipoProducto"  >
							                  				  <option value="" > - Seleccionar - </option>
							                 				  <?php foreach ($a_o_ArTipoproductoFN as $iKey => $o_ArTipoproductoFN){ ?>
							                  				  	<option value="<?=$o_ArTipoproductoFN->getIdtipoproducto()?>" <?php if($a_o_ArArqueoDetalleProductoBN->getIdtipoproducto()== $o_ArTipoproductoFN->getIdtipoproducto()) echo "selected";?>>
							                    			 	<?=$o_ArTipoproductoFN->getDescripcion()?>
							                   	              	</option>
							                  					<?php } ?>
							                				</select>
                                                          </td>
                                                        </tr>
														<tr>
                                                          <td align="left" id=""><label class="label">Descripcion</label></td>
                                                          <td align="left" id=""><input type="text" class="text required" name="descripcionproducto" id="descripcionproducto" value="<?php echo $a_o_ArArqueoDetalleProductoBN->getDecripcionproducto()?>"></td>
                                                        </tr>
                                                        <tr>
                                                          <td align="left" id=""><label class="label">Monto Total</label></td>
                                                          <td align="left" id=""><input type="text" class="text required" name="montoActual" id="montoActual"  value="<?php echo $a_o_ArArqueoDetalleProductoBN->getSubtotal()?>"></td>
                                                        </tr>
                                                       <tr>
                                                          <td align="left" id=""><label class="label">Cantidad</label></td>
                                                          <td align="left" id=""><input type="text" class="text required validate-digits" name="cantidad" id="cantidad" maxlength="3" size="4" value="<?php echo $a_o_ArArqueoDetalleProductoBN->getCantidad()?>"></td>
                                                        </tr>
                                                        
                                                        <tr>
                                                          <td align="left" id=""><label class="label">Cliente</label></td>
                                                          <td align="left" id=""><label class="label"><?php echo $a_o_ArArqueoDetalleProductoBN->getNombrecliente()?></label>
                                                          														</td>
                                                        </tr>
                                                        <tr>
														    <td align="center" colspan="2">
																<input type="hidden" name="typeSubmit" id="typeSubmit">
																<input class="button" type="submit" value="Grabar" onclick="$('typeSubmit').value='ok';">
																<input class="button" type="button" value="Cancelar" onclick=" parent.objMainTab.windowsCloseAll();"/>
														    </td>
														</tr>
                                                        
                                                    </table>
                                                        
                                                </td>
                                                
                                               
                                            </tr>
                                            
                                    	</table>
                                    	
                                    	               
                                    
									
                                	
                                </td>
                            </tr>
                        </table>
                        
                        
                        
                        
				
			</form>
				<script type="text/javascript">
					
					
					var valid = new Validation('form1', {immediate : false});
					
				</script>
		</td>
	</tr>
</table>


<?php
  //}
}
?>

