<?php
header("Content-Type: text/html;charset=utf-8");
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}

require_once("../data/Conexion.php");
require_once("../data/Tablas.php");
require_once("../clases/cls_tienda.php");
require_once("../clases/cls_compra.php");
require_once("../clases/cls_compra_producto.php");
require_once("../clases/cls_venta.php");
require_once("../clases/cls_venta_producto.php");
require_once("../clases/cls_movimiento.php");
require_once("../clases/cls_movimiento_producto.php");
require_once("../clases/cls_moneda.php");

function unidad($numuero){
	switch ($numuero)
	{
		case 9:
		{
			$numu = "NUEVE";
			break;
		}
		case 8:
		{
			$numu = "OCHO";
			break;
		}
		case 7:
		{
			$numu = "SIETE";
			break;
		}
		case 6:
		{
			$numu = "SEIS";
			break;
		}
		case 5:
		{
			$numu = "CINCO";
			break;
		}
		case 4:
		{
			$numu = "CUATRO";
			break;
		}
		case 3:
		{
			$numu = "TRES";
			break;
		}
		case 2:
		{
			$numu = "DOS";
			break;
		}
		case 1:
		{
			$numu = "UNO";
			break;
		}
		case 0:
		{
			$numu = "CERO";
			break;
		}
	}
	return $numu;
}
function decena($numdero){
 
		if ($numdero >= 90 && $numdero <= 99)
		{
			$numd = "NOVENTA ";
			if ($numdero > 90)
				$numd = $numd."Y ".(unidad($numdero - 90));
		}
		else if ($numdero >= 80 && $numdero <= 89)
		{
			$numd = "OCHENTA ";
			if ($numdero > 80)
				$numd = $numd."Y ".(unidad($numdero - 80));
		}
		else if ($numdero >= 70 && $numdero <= 79)
		{
			$numd = "SETENTA ";
			if ($numdero > 70)
				$numd = $numd."Y ".(unidad($numdero - 70));
		}
		else if ($numdero >= 60 && $numdero <= 69)
		{
			$numd = "SESENTA ";
			if ($numdero > 60)
				$numd = $numd."Y ".(unidad($numdero - 60));
		}
		else if ($numdero >= 50 && $numdero <= 59)
		{
			$numd = "CINCUENTA ";
			if ($numdero > 50)
				$numd = $numd."Y ".(unidad($numdero - 50));
		}
		else if ($numdero >= 40 && $numdero <= 49)
		{
			$numd = "CUARENTA ";
			if ($numdero > 40)
				$numd = $numd."Y ".(unidad($numdero - 40));
		}
		else if ($numdero >= 30 && $numdero <= 39)
		{
			$numd = "TREINTA ";
			if ($numdero > 30)
				$numd = $numd."Y ".(unidad($numdero - 30));
		}
		else if ($numdero >= 20 && $numdero <= 29)
		{
			if ($numdero == 20)
				$numd = "VEINTE ";
			else
				$numd = "VEINTI".(unidad($numdero - 20));
		}
		else if ($numdero >= 10 && $numdero <= 19)
		{
			switch ($numdero){
			case 10:
			{
				$numd = "DIEZ ";
				break;
			}
			case 11:
			{
				$numd = "ONCE ";
				break;
			}
			case 12:
			{
				$numd = "DOCE ";
				break;
			}
			case 13:
			{
				$numd = "TRECE ";
				break;
			}
			case 14:
			{
				$numd = "CATORCE ";
				break;
			}
			case 15:
			{
				$numd = "QUINCE ";
				break;
			}
			case 16:
			{
				$numd = "DIECISEIS ";
				break;
			}
			case 17:
			{
				$numd = "DIECISIETE ";
				break;
			}
			case 18:
			{
				$numd = "DIECIOCHO ";
				break;
			}
			case 19:
			{
				$numd = "DIECINUEVE ";
				break;
			}
			}
		}
		else
			$numd = unidad($numdero);
	return $numd;
}
function centena($numc){
		if ($numc >= 100)
		{
			if ($numc >= 900 && $numc <= 999)
			{
				$numce = "NOVECIENTOS ";
				if ($numc > 900)
					$numce = $numce.(decena($numc - 900));
			}
			else if ($numc >= 800 && $numc <= 899)
			{
				$numce = "OCHOCIENTOS ";
				if ($numc > 800)
					$numce = $numce.(decena($numc - 800));
			}
			else if ($numc >= 700 && $numc <= 799)
			{
				$numce = "SETECIENTOS ";
				if ($numc > 700)
					$numce = $numce.(decena($numc - 700));
			}
			else if ($numc >= 600 && $numc <= 699)
			{
				$numce = "SEISCIENTOS ";
				if ($numc > 600)
					$numce = $numce.(decena($numc - 600));
			}
			else if ($numc >= 500 && $numc <= 599)
			{
				$numce = "QUINIENTOS ";
				if ($numc > 500)
					$numce = $numce.(decena($numc - 500));
			}
			else if ($numc >= 400 && $numc <= 499)
			{
				$numce = "CUATROCIENTOS ";
				if ($numc > 400)
					$numce = $numce.(decena($numc - 400));
			}
			else if ($numc >= 300 && $numc <= 399)
			{
				$numce = "TRESCIENTOS ";
				if ($numc > 300)
					$numce = $numce.(decena($numc - 300));
			}
			else if ($numc >= 200 && $numc <= 299)
			{
				$numce = "DOSCIENTOS ";
				if ($numc > 200)
					$numce = $numce.(decena($numc - 200));
			}
			else if ($numc >= 100 && $numc <= 199)
			{
				if ($numc == 100)
					$numce = "CIEN ";
				else
					$numce = "CIENTO ".(decena($numc - 100));
			}
		}
		else
			$numce = decena($numc);
 
		return $numce;
}
function miles($nummero){
		if ($nummero >= 1000 && $nummero < 2000){
			$numm = "MIL ".(centena($nummero%1000));
		}
		if ($nummero >= 2000 && $nummero <10000){
			$numm = unidad(Floor($nummero/1000))." MIL ".(centena($nummero%1000));
		}
		if ($nummero < 1000)
			$numm = centena($nummero);
 
		return $numm;
}
function decmiles($numdmero){
		if ($numdmero == 10000)
			$numde = "DIEZ MIL";
		if ($numdmero > 10000 && $numdmero <20000){
			$numde = decena(Floor($numdmero/1000))."MIL ".(centena($numdmero%1000));
		}
		if ($numdmero >= 20000 && $numdmero <100000){
			$numde = decena(Floor($numdmero/1000))." MIL ".(miles($numdmero%1000));
		}
		if ($numdmero < 10000)
			$numde = miles($numdmero);
 
		return $numde;
}
function cienmiles($numcmero){
		if ($numcmero == 100000)
			$num_letracm = "CIEN MIL";
		if ($numcmero >= 100000 && $numcmero <1000000){
			$num_letracm = centena(Floor($numcmero/1000))." MIL ".(centena($numcmero%1000));
		}
		if ($numcmero < 100000)
			$num_letracm = decmiles($numcmero);
		return $num_letracm;
}
function millon($nummiero){
		if ($nummiero >= 1000000 && $nummiero <2000000){
			$num_letramm = "UN MILLON ".(cienmiles($nummiero%1000000));
		}
		if ($nummiero >= 2000000 && $nummiero <10000000){
			$num_letramm = unidad(Floor($nummiero/1000000))." MILLONES ".(cienmiles($nummiero%1000000));
		}
		if ($nummiero < 1000000)
			$num_letramm = cienmiles($nummiero);
 
		return $num_letramm;
}
function decmillon($numerodm){
		if ($numerodm == 10000000)
			$num_letradmm = "DIEZ MILLONES";
		if ($numerodm > 10000000 && $numerodm <20000000){
			$num_letradmm = decena(Floor($numerodm/1000000))."MILLONES ".(cienmiles($numerodm%1000000));
		}
		if ($numerodm >= 20000000 && $numerodm <100000000){
			$num_letradmm = decena(Floor($numerodm/1000000))." MILLONES ".(millon($numerodm%1000000));
		}
		if ($numerodm < 10000000)
			$num_letradmm = millon($numerodm);
 
		return $num_letradmm;
}
function cienmillon($numcmeros){
		if ($numcmeros == 100000000)
			$num_letracms = "CIEN MILLONES";
		if ($numcmeros >= 100000000 && $numcmeros <1000000000){
			$num_letracms = centena(Floor($numcmeros/1000000))." MILLONES ".(millon($numcmeros%1000000));
		}
		if ($numcmeros < 100000000)
			$num_letracms = decmillon($numcmeros);
		return $num_letracms;
}
function milmillon($nummierod){
		if ($nummierod >= 1000000000 && $nummierod <2000000000){
			$num_letrammd = "MIL ".(cienmillon($nummierod%1000000000));
		}
		if ($nummierod >= 2000000000 && $nummierod <10000000000){
			$num_letrammd = unidad(Floor($nummierod/1000000000))." MIL ".(cienmillon($nummierod%1000000000));
		}
		if ($nummierod < 1000000000)
			$num_letrammd = cienmillon($nummierod);
 
		return $num_letrammd;
}
function convertir($numero){
		     $num = str_replace(",","",$numero);
		     $num = number_format($num,2,'.','');
		     $datos = explode(".", $num);
		     $numf = "";
		     $cents = "";
		     if ($datos[0] != ""){
		         $numf = milmillon((int)$datos[0]);
		     } else {
		         $numf = milmillon(0);
		     }
		     if (count($datos)>0 && $datos[1] != ""){
		         $cents = $datos[1];
		     } else {
		         $cents = "0";
		     }
		     
        return $numf . " CON " . $cents . "/100 SOLES";
}
function formato_de_fecha1($fecha){
	setlocale(LC_ALL,"es_ES");
	$fecha1 = str_replace("/", "-", $fecha); 
	$fecha1 = date("d-m-Y", strtotime($fecha1)); 
	$fecha1 = strftime("%d-%m-%Y", strtotime($fecha1));
	return $fecha1;
}
function write_ticket($datos_doc, $productos){
	$doc_html = '<div style="min-width:192px;max-width:312px;font-family:arial;font-size:12px;padding:0px 0px;background-color:#FFFFFF;color:#000000;width:90%;margin:auto;">';
	$doc_html .= '<div style="text-align:center;font-size:12px;">';
	$doc_html .= '<div style="padding:10px 0px;font-weight:bold;text-transform:uppercase;">'.$datos_doc["nombre_comercial"].'</div>';
	if (strlen($datos_doc["imagen_comercial"]) > 0){
		$contenidoBinario = file_get_contents('../libreria/imagenes/'.$datos_doc["imagen_comercial"]);
		$imagenComoBase64 = base64_encode($contenidoBinario);
		$doc_html .= '<img src="data:image/png;base64,'.$imagenComoBase64.'" style="max-height:100px;" />';
	}
	/*if (strlen($datosdb->get_provincia()) > 0 && strlen($datosdb->get_distrito()) > 0){
		$doc_html .= '<div style="width:90%;margin:auto;text-align:center;">'.$datosdb->get_distrito().' - '.$datosdb->get_provincia().'</div>';
	}*/
	if (strlen($datos_doc["direccion_comercial"]) > 0){
		$doc_html .= '<div style="">'.$datos_doc["direccion_comercial"].'</div>';
	}
	$doc_html .= '<div style="">Teléfono : '.$datos_doc["telefonos_comercial"].'</div>';
	$doc_html .= '<div style="">Tienda : '.$datos_doc["tienda_nombre"].'</div>';
	if (strlen($datos_doc["ruc_comercial"]) > 0){
		$doc_html .= '<div style="">R.U.C. N° '.$datos_doc["ruc_comercial"].'</div>';
	}
	$doc_html .= '<br />';
	$doc_html .= '<div style="font-weight:bold;text-transform:uppercase;">'.$datos_doc["comprobante_pago"].'</div>';
	$doc_html .= '<div style="padding-bottom:10px;font-weight:bold;">'.$datos_doc["comprobante_numero"].'</div>';
	$doc_html .= '<div style="text-align:left;">'.formato_de_fecha1($datos_doc["fecha"]).' '.$datos_doc["hora"].'</div>';
	$doc_html .= '<hr>';
	$doc_html .= '<div style="text-align:left;"><strong>Cliente : </strong>'.$datos_doc["cliente_nombre"].'</div>';
	if (strlen($datos_doc["cliente_documento_tipo"]) == 0){
		$doc_html .= '<div style="text-align:left;"><strong>DNI : </strong></div>';
	} else {
		$doc_html .= '<div style="text-align:left;"><strong>'.$datos_doc["cliente_documento_tipo"].' : </strong>'.$datos_doc["cliente_documento_numero"].'</div>';
	}
	if (strlen($datos_doc["cliente_direccion"]) > 0){
		$doc_html .= '<div style="text-align:left;padding-bottom:10px;"><strong>Dirección : </strong>'.$datos_doc["cliente_direccion"].'</div>';
	}
	if (strlen($datos_doc["tipo_pago"]) > 0){
		$doc_html .= '<div style="text-align:left;padding-bottom:10px;"><strong>Tipo de pago : </strong>'.$datos_doc["tipo_pago"].'</div>';
	}
	if (strlen($datos_doc["parent_comprobante_tipo"]) > 0){
		$doc_html .= '<div style="text-align:left;"><strong>'.$datos_doc["parent_comprobante_tipo"].' : </strong>'.$datos_doc["parent_comprobante_numero"].'</div>';
	}
	$doc_html .= '</div>';
	$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
	$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;border-top:1px solid #000000;border-bottom:1px solid #000000;">';
	$doc_html .= '<th valign="middle" style="width:50px;">Cant.</th>';
	$doc_html .= '<th valign="middle" style="">Descripción</th>';
	$doc_html .= '<th valign="middle" style="width:50px;">P.Unit</th>';
	$doc_html .= '<th valign="middle" style="width:50px;">Total</th>';
	$doc_html .= '</tr>';
	for ($indice=0; $indice<count($productos); $indice++){
		$producto = $productos[$indice];
		if ($producto["unidades"] > 0){
			$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;">';
			$doc_html .= '<td valign="middle" style="font-size:12px;text-align:center;">'.$producto["unidades"].'</td>';
			$doc_html .= '<td valign="middle" style="font-size:12px;padding:0px 10px;">'.$producto["producto"].'</td>';
			$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;padding:0px 10px;">s/. '.number_format($producto["precio_venta"], 2, ".", "").'</td>';
			$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;padding:0px 10px;">s/. '.number_format(($producto["precio_venta"]*$producto["unidades"]), 2, ".", "").'</td>';
			$doc_html .= '</tr>';
		}
	}
	$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;border-top:1px solid #000000;">';
	$doc_html .= '<td colspan="2" valign="middle" style="font-size:12px;text-align:left;">SUB TOTAL</td>';
	$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">s/.</td>';
	$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">'.number_format($datos_doc["costo_subtotal"], 2, ".", "").'</td>';
	$doc_html .= '</tr>';
	$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;">';
	$doc_html .= '<td colspan="2" valign="middle" style="font-size:12px;text-align:left;">I.G.V</td>';
	$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">s/.</td>';
	$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">'.number_format($datos_doc["costo_igv"], 2, ".", "").'</td>';
	$doc_html .= '</tr>';
    $comision_tarjeta = 0.0;
    if ($datos_doc["tipo_pago"] == "Tarjeta"){
		$comision_tarjeta = $datos_doc["costo_total"]*0.05;
		/*$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;border-top:1px solid #000000;">';
		$doc_html .= '<td colspan="2" valign="middle" style="font-size:12px;text-align:left;">SUB TOTAL</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">s/.</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">'.number_format($datos_doc["costo_total"], 2, ".", "").'</td>';
		$doc_html .= '</tr>';*/
		$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;">';
		$doc_html .= '<td colspan="2" valign="middle" style="font-size:12px;text-align:left;">PAGO CON TARJETA</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">s/.</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">'.number_format($comision_tarjeta, 2, ".", "").'</td>';
		$doc_html .= '</tr>';
		$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;font-weight:bold;">';
		$doc_html .= '<td colspan="2" valign="middle" style="font-size:12px;text-align:left;">TOTAL</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">s/.</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">'.number_format($datos_doc["costo_total"]+$comision_tarjeta, 2, ".", "").'</td>';
		$doc_html .= '</tr>';
	} else {
		$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;font-weight:bold;">';
		$doc_html .= '<td colspan="2" valign="middle" style="font-size:12px;text-align:left;">TOTAL</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">s/.</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">'.number_format($datos_doc["costo_total"], 2, ".", "").'</td>';
		$doc_html .= '</tr>';
	}
    $doc_html .= '</table>';
	$doc_html .= '<div style="text-align:left;padding: 20px 0px 0px 0px;"><strong>SON : '.convertir(number_format($datos_doc["costo_total"]+$comision_tarjeta, 2, ".", "")).'</strong></div>';
	$doc_html .= '<div style="text-align:center;padding: 5px 0px;"><strong>Gracias por su preferencia</strong></div>';
	$doc_html .= '</div>';
	return array("vista_ticket"=>$doc_html, "width_ticket"=>312);
}
function write_comprobante($datos_doc, $productos){
	$doc_html = '<div style="min-width:192px;max-width:813px;font-family:arial;font-size:12px;padding:20px 5px;background-color:#FFFFFF;color:#000000;">';
	$doc_html .= '<div style="display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: center;align-items: center;align-content: center;width:95%;margin:auto;">';
	$doc_html .= '<div style="width:50%;min-height:100px;display: flex;flex-direction: column;flex-wrap: nowrap;justify-content: center;align-items: center;align-content: center;">';
	if (strlen($datos_doc["imagen_comercial"]) > 0){
		$contenidoBinario = file_get_contents('../libreria/imagenes/'.$datos_doc["imagen_comercial"]);
		$imagenComoBase64 = base64_encode($contenidoBinario);
		$doc_html .= '<img src="data:image/png;base64,'.$imagenComoBase64.'" style="max-height:100px;" />';
	}
	$doc_html .= '<div style="padding:10px 0px;font-size:12px;font-weight:bold;text-transform:uppercase;">'.$datos_doc["nombre_comercial"].'</div>';
	if (strlen($datos_doc["telefonos_comercial"]) > 0){
		$doc_html .= '<div style="font-size:12px;">Teléfono : '.$datos_doc["telefonos_comercial"].'</div>';
	}
	/*if (strlen($datosdb->get_provincia()) > 0 && strlen($datosdb->get_distrito()) > 0){
		$doc_html .= '<div style="width:90%;margin:auto;text-align:center;">'.$datosdb->get_distrito().' - '.$datosdb->get_provincia().'</div>';
	}*/
	$doc_html .= '<div style="padding-bottom:10px;">'.$datos_doc["direccion_comercial"].'</div>';
	$doc_html .= '</div>';
	$doc_html .= '<div style="width:50%;min-height:100px;display: flex;flex-direction: column;flex-wrap: nowrap;justify-content: center;align-items: center;align-content: center;font-size:20px;text-transform: uppercase;font-weight:bold;border:1px solid #000000;border-radius:5px;">';
	if (strlen($datos_doc["ruc_comercial"]) > 0){
		$doc_html .= '<div style="padding-top:10px;">R.U.C. : '.$datos_doc["ruc_comercial"].'</div>';
	}
	$doc_html .= '<div style="padding:10px 0px;text-transform:uppercase;">'.$datos_doc["comprobante_pago"].'</div>';
	$doc_html .= '<div style="padding-bottom:10px;">'.$datos_doc["comprobante_numero"].'</div>';
	$doc_html .= '</div>';
	$doc_html .= '</div>';
	if (strlen($datos_doc["imagen_comercial"]) > 0){
		$doc_html .= '<div style="background-image:url(libreria/imagenes/fondo_'.$datos_doc["imagen_comercial"].');background-position:center;background-repeat:no-repeat;background-size: contain;">';
	} else {
		$doc_html .= '<div style="background-color:#FFFFFF;">';
	}
	$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
    $doc_html .= '<tr>';
	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;" width="120"><strong>Tienda:</strong></td><td>'.$datos_doc["tienda_nombre"].'</td>';
    $doc_html .= '</tr>';
    $doc_html .= '<tr>';
	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Fecha de emisión:</strong></td><td>'.formato_de_fecha1($datos_doc["fecha"]).'</td>';
    $doc_html .= '</tr>';
    $doc_html .= '<tr>';
	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Cliente:</strong></td><td>'.$datos_doc["cliente_nombre"].'</td>';
    $doc_html .= '</tr>';
    $doc_html .= '<tr>';
	if (strlen($datos_doc["cliente_documento_tipo"]) == 0){
	   	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>DNI:</strong></td><td></td>';
	} else {
	    $doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>'.$datos_doc["cliente_documento_tipo"].':</strong></td><td>'.$datos_doc["cliente_documento_numero"].'</td>';
	}
    $doc_html .= '</tr>';
	if (strlen($datos_doc["cliente_direccion"]) > 0){
    	$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Dirección del cliente:</strong>'.$datos_doc["cliente_direccion"].'</td>';
    	$doc_html .= '</tr>';
	}
   	$doc_html .= '<tr>';
	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Tipo de moneda:</strong></td><td>'.$datos_doc["tipo_moneda"].'</td>';
    $doc_html .= '</tr>';
	if (strlen($datos_doc["tipo_pago"]) > 0){
		$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Tipo de pago:</strong></td><td>'.$datos_doc["tipo_pago"].'</td>';
		$doc_html .= '</tr>';
	}
	if (strlen($datos_doc["parent_comprobante_tipo"]) > 0){
		$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>'.$datos_doc["parent_comprobante_tipo"].':</strong></td><td>'.$datos_doc["parent_comprobante_numero"].'</td>';
		$doc_html .= '</tr>';
	}
	$doc_html .= '</table>';
	$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
	$doc_html .= '<tr style="height:25px;border-top:1px solid #000000;border-bottom:1px solid #000000;">';
	$doc_html .= '<th valign="middle" style="border-left:1px solid #000000;width:100px;">Cantidad</th>';
	$doc_html .= '<th valign="middle" style="border-left:1px solid #000000;border-right:1px solid #000000;">Descripción</th>';
	$doc_html .= '<th valign="middle" style="border-right:1px solid #000000;width:100px;">Precio unitario</th>';
	$doc_html .= '<th valign="middle" style="border-right:1px solid #000000;width:100px;">Valor de venta</th>';
	$doc_html .= '</tr>';
	for ($indice=0; $indice<count($productos); $indice++){
		$producto = $productos[$indice];
		if ($producto["unidades"] > 0){
			$doc_html .= '<tr style="height:25px;">';
			$doc_html .= '<td valign="middle" style="border-left:1px solid #000000;width:100px;text-align:center;">'.$producto["unidades"].'</td>';
			$doc_html .= '<td valign="middle" style="border-left:1px solid #000000;border-right:1px solid #000000;padding:0px 10px;">'.$producto["producto"].'</td>';
			$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">s/. '.number_format($producto["precio_venta"], 2, ".", "").'</td>';
			$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">s/. '.number_format($producto["precio_venta"]*$producto["unidades"], 2, ".", "").'</td>';
			$doc_html .= '</tr>';
		}
	}
    $doc_html .= '<tr style="height:5px;border-top:1px solid #000000;">';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '</tr>';
	$doc_html .= '</table>';
    $comision_tarjeta = 0.0;
    if ($datos_doc["tipo_pago"] == "Tarjeta"){
		$comision_tarjeta = $datos_doc["costo_total"]*0.05;
	}
	$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
	$doc_html .= '<tr style="height:25px;">';
	$doc_html .= '<td valign="middle" ></td>';
	$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">SUBTOTAL</td>';
	$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;border-top:1px solid #000000;">s/. '.number_format($datos_doc["costo_subtotal"], 2, ".", "").'</td>';
	$doc_html .= '</tr>';
	$doc_html .= '<tr style="height:25px;">';
	$doc_html .= '<td valign="middle"><div style="font-weight:bold;width:80%;">SON : '.convertir(number_format($datos_doc["costo_total"]+$comision_tarjeta, 2, ".", "")).'</div></td>';
	$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">IGV</td>';
	$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;border-top:1px solid #000000;">s/. '.number_format($datos_doc["costo_igv"], 2, ".", "").'</td>';
	$doc_html .= '</tr>';
    if ($datos_doc["tipo_pago"] == "Tarjeta"){
		/*$doc_html .= '<tr style="height:30px;background-color:#FFFFFF;border-top:1px solid #000000;">';
		$doc_html .= '<td colspan="2" valign="middle" style="font-size:12px;text-align:left;">SUB TOTAL</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">s/.</td>';
		$doc_html .= '<td valign="middle" style="font-size:12px;text-align:right;">'.number_format($datos_doc["costo_total"], 2, ".", "").'</td>';
		$doc_html .= '</tr>';*/
		$doc_html .= '<tr style="height:30px;">';
		$doc_html .= '<td valign="middle" ></td>';
		$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">PAGO CON TARJETA</td>';
		$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;border:1px solid #000000;">s/. '.number_format($comision_tarjeta, 2, ".", "").'</td>';
		$doc_html .= '</tr>';
		$doc_html .= '<tr style="height:30px;">';
		$doc_html .= '<td valign="middle" ></td>';
		$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">TOTAL</td>';
		$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;border:1px solid #000000;">s/. '.number_format($datos_doc["costo_total"]+$comision_tarjeta, 2, ".", "").'</td>';
		$doc_html .= '</tr>';
	} else {
		$doc_html .= '<tr style="height:30px;font-weight:bold;">';
		$doc_html .= '<td valign="middle" ></td>';
		$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">TOTAL</td>';
		$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;border:1px solid #000000;">s/. '.number_format($datos_doc["costo_total"], 2, ".", "").'</td>';
		$doc_html .= '</tr>';
	}
	$doc_html .= '</table>';
	$doc_html .= '</div>';
	$doc_html .= '</div>';
	return array("vista_ticket"=>$doc_html, "width_ticket"=>813);
}
function write_compra($datos_doc, $productos){
	$doc_html = '<div style="min-width:192px;max-width:813px;font-family:arial;font-size:12px;padding:20px 5px;background-color:#FFFFFF;color:#000000;">';
	$doc_html .= '<div style="display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: center;align-items: center;align-content: center;width:95%;margin:auto;">';
	$doc_html .= '<div style="width:50%;min-height:100px;display: flex;flex-direction: column;flex-wrap: nowrap;justify-content: center;align-items: center;align-content: center;">';
	if (strlen($datos_doc["imagen_comercial"]) > 0){
		$contenidoBinario = file_get_contents('../libreria/imagenes/'.$datos_doc["imagen_comercial"]);
		$imagenComoBase64 = base64_encode($contenidoBinario);
		$doc_html .= '<img src="data:image/png;base64,'.$imagenComoBase64.'" style="max-height:100px;" />';
	}
	$doc_html .= '<div style="padding:10px 0px;font-size:12px;font-weight:bold;text-transform:uppercase;">'.$datos_doc["nombre_comercial"].'</div>';
	if (strlen($datos_doc["telefonos_comercial"]) > 0){
		$doc_html .= '<div style="font-size:12px;">Teléfono : '.$datos_doc["telefonos_comercial"].'</div>';
	}
	/*if (strlen($datosdb->get_provincia()) > 0 && strlen($datosdb->get_distrito()) > 0){
		$doc_html .= '<div style="width:90%;margin:auto;text-align:center;">'.$datosdb->get_distrito().' - '.$datosdb->get_provincia().'</div>';
	}*/
	$doc_html .= '<div style="padding-bottom:10px;">'.$datos_doc["direccion_comercial"].'</div>';
	$doc_html .= '</div>';
	$doc_html .= '<div style="width:50%;min-height:100px;display: flex;flex-direction: column;flex-wrap: nowrap;justify-content: center;align-items: center;align-content: center;font-size:20px;text-transform: uppercase;font-weight:bold;border:1px solid #000000;border-radius:5px;">';
	if (strlen($datos_doc["ruc_comercial"]) > 0){
		$doc_html .= '<div style="padding-top:10px;">R.U.C. : '.$datos_doc["ruc_comercial"].'</div>';
	}
	$doc_html .= '<div style="padding:10px 0px;text-transform:uppercase;">'.$datos_doc["comprobante_pago"].'</div>';
	$doc_html .= '<div style="padding-bottom:10px;">'.$datos_doc["comprobante_numero"].'</div>';
	$doc_html .= '</div>';
	$doc_html .= '</div>';
	if (strlen($datos_doc["imagen_comercial"]) > 0){
		$doc_html .= '<div style="background-image:url(libreria/imagenes/fondo_'.$datos_doc["imagen_comercial"].');background-position:center;background-repeat:no-repeat;background-size: contain;">';
	} else {
		$doc_html .= '<div style="background-color:#FFFFFF;">';
	}
	$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
    $doc_html .= '<tr>';
	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Fecha de registro:</strong></td><td>'.formato_de_fecha1($datos_doc["fecha"]).'</td>';
    $doc_html .= '</tr>';
    $doc_html .= '<tr>';
	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;" width="120"><strong>Responsable:</strong></td><td>'.$datos_doc["responsable_nombre"].'</td>';
    $doc_html .= '</tr>';
	if (strlen($datos_doc["responsable_documento_tipo"]) == 0){
	   	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>DNI:</strong></td><td></td>';
	} else {
	    $doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>'.$datos_doc["responsable_documento_tipo"].':</strong></td><td>'.$datos_doc["responsable_documento_numero"].'</td>';
	}
   	$doc_html .= '<tr>';
	$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Tipo de moneda:</strong></td><td>'.$datos_doc["tipo_moneda"].'</td>';
    $doc_html .= '</tr>';
	if (strlen($datos_doc["tipo_pago"]) > 0){
		$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Tipo de pago:</strong></td><td>'.$datos_doc["tipo_pago"].'</td>';
		$doc_html .= '</tr>';
	}
	if (strlen($datos_doc["parent_comprobante_tipo"]) > 0){
		$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>'.$datos_doc["parent_comprobante_tipo"].':</strong></td><td>'.$datos_doc["parent_comprobante_numero"].'</td>';
		$doc_html .= '</tr>';
	}
	$doc_html .= '</table>';
	$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
	$doc_html .= '<tr style="height:25px;border-top:1px solid #000000;border-bottom:1px solid #000000;">';
	$doc_html .= '<th valign="middle" style="border-left:1px solid #000000;width:100px;">Cantidad</th>';
	$doc_html .= '<th valign="middle" style="border-left:1px solid #000000;border-right:1px solid #000000;">Descripción</th>';
	$doc_html .= '<th valign="middle" style="border-right:1px solid #000000;width:100px;">Precio unitario</th>';
	$doc_html .= '<th valign="middle" style="border-right:1px solid #000000;width:100px;">Valor de venta</th>';
	$doc_html .= '</tr>';
	for ($indice=0; $indice<count($productos); $indice++){
		$producto = $productos[$indice];
		if ($producto["unidades"] > 0){
			$doc_html .= '<tr style="height:25px;">';
			$doc_html .= '<td valign="middle" style="border-left:1px solid #000000;width:100px;text-align:center;">'.$producto["unidades"].'</td>';
			$doc_html .= '<td valign="middle" style="border-left:1px solid #000000;border-right:1px solid #000000;padding:0px 10px;">'.$producto["producto"].'</td>';
			$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">s/. '.number_format($producto["precio_compra"], 2, ".", "").'</td>';
			$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">s/. '.number_format($producto["precio_compra"]*$producto["unidades"], 2, ".", "").'</td>';
			$doc_html .= '</tr>';
		}
	}
    $doc_html .= '<tr style="height:5px;border-top:1px solid #000000;">';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '<td valign="middle"></td>';
    $doc_html .= '</tr>';
	$doc_html .= '</table>';
    $comision_tarjeta = 0.0;
    if ($datos_doc["tipo_pago"] == "Tarjeta"){
		$comision_tarjeta = $datos_doc["costo_total"]*0.05;
	}
	$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
	$doc_html .= '<tr style="height:30px;font-weight:bold;">';
	$doc_html .= '<td valign="middle"><div style="font-weight:bold;width:80%;"></div></td>';
	$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;">TOTAL</td>';
	$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;border:1px solid #000000;">s/. '.number_format($datos_doc["costo_total"], 2, ".", "").'</td>';
	$doc_html .= '</tr>';
	$doc_html .= '</table>';
	$doc_html .= '</div>';
	$doc_html .= '</div>';
	return array("vista_ticket"=>$doc_html, "width_ticket"=>813);
}
function doc_venta(){
	$respuestas = array("estado"=>"error", "mensaje"=>"", "html"=>"", "datos"=>array());
	$ocultar = true;
	if (isset($_POST["ocultar"]) && $_POST["ocultar"]==0){$ocultar = false;}
	$datosdb = cls_Venta::Indice($_POST["codigo"]);
	$datos_parent = new cls_Venta();
	if ($datosdb->get_venta_base_id() > 0){
		$datos_parent = cls_Venta::Indice($datosdb->get_venta_base_id());
	}
	$cambio = 1.0;
	$monedadb = cls_Moneda::Codigo($datosdb->get_moneda_codigo());
	$moneda_simbolo = $monedadb->get_simbolo();
	if (strlen($datosdb->get_observaciones()) > 0){
		$_dict = json_decode($datosdb->get_observaciones(), true);
		if (isset($_dict["cambio"])){
			$cambio = $_dict["cambio"];
		}
	}
	$datos_doc = array(
		"tienda_nombre"=>$datosdb->get_tienda_nombre(),
		"nombre_comercial"=>"LA CASA DE LA SEGURIDAD S.A.C.",
		"imagen_comercial"=>"logo_casa_de_seguridad.png",
		"ruc_comercial"=>"",
		"direccion_comercial"=>"Av. Argentina Nº 344 Interior I-25 / G06 / E14 / J-58 - malvinas - Lima - Lima",
		"telefonos_comercial"=>"997716381, 998361124",
		"notaventa_serie"=>"1",
		"notaventa_numeracion"=>"1",
		"comprobante_pago"=>$datosdb->get_comprobante_tipo(),
		"comprobante_numero"=>$datosdb->get_comprobante_numero(),
		"parent_comprobante_tipo"=>"",
		"parent_comprobante_numero"=>"",
		"tipo_pago"=>$datosdb->get_tipo_pago(),
		"tipo_moneda"=>$monedadb->get_nombre(),
		"fecha"=>$datosdb->get_fecha(),
		"hora"=>$datosdb->get_hora(),
		"cliente_nombre"=>$datosdb->get_cliente_nombre(),
		"cliente_direccion"=>"",
		"cliente_documento_tipo"=>$datosdb->get_cliente_documento_tipo(),
		"cliente_documento_numero"=>$datosdb->get_cliente_documento_numero(),
		"costo_subtotal"=>$datosdb->get_costo_subtotal(),
		"costo_igv"=>$datosdb->get_costo_igv(),
		"costo_total"=>$datosdb->get_costo_total(),
	);
	if ($datos_parent->get_venta_id() > 0){
		$datos_doc["parent_comprobante_tipo"] = $datos_parent->get_comprobante_tipo();
		$datos_doc["parent_comprobante_numero"] = $datos_parent->get_comprobante_numero();
	}
	$productos = array();
	$prodcdb = cls_Group_Venta_Producto::Venta($_POST["codigo"]);
	$prodcdb->cargar_datos(0, 0);
	for ($indice=0; $indice<$prodcdb->get_cantidad_cargados(); $indice++){
		if ($prodcdb->get_unidades($indice) > 0 || !$ocultar){
			array_push($productos, array(
				"unidades"=>$prodcdb->get_unidades($indice),
				"producto"=>$prodcdb->get_producto_nombre($indice),
				"precio_venta"=>$prodcdb->get_precio_venta($indice),
			));
		}
	}
	$d_datos = write_ticket($datos_doc, $productos);
	$respuestas["vista_ticket"] = $d_datos["vista_ticket"];
	$respuestas["width_ticket"] = $d_datos["width_ticket"];
	$d_datos = write_comprobante($datos_doc, $productos);
	$respuestas["vista_documento"] = $d_datos["vista_ticket"];
	$respuestas["width_documento"] = $d_datos["width_ticket"];
	$respuestas["estado"] = "ok";
	$respuestas["mensaje"] = "";
	echo(json_encode($respuestas));
}
function doc_devolucion(){
	$respuestas = array("estado"=>"error", "mensaje"=>"", "html"=>"", "datos"=>array());
	$ocultar = true;
	if (isset($_POST["ocultar"]) && $_POST["ocultar"]==0){$ocultar = false;}
	$datosdb = cls_Venta::Indice($_POST["codigo"]);
	$datos_parent = new cls_Venta();
	if ($datosdb->get_venta_base_id() > 0){
		$datos_parent = cls_Venta::Indice($datosdb->get_venta_base_id());
	}
	$cambio = 1.0;
	$monedadb = cls_Moneda::Codigo($datosdb->get_moneda_codigo());
	$moneda_simbolo = $monedadb->get_simbolo();
	if (strlen($datosdb->get_observaciones()) > 0){
		$_dict = json_decode($datosdb->get_observaciones(), true);
		if (isset($_dict["cambio"])){
			$cambio = $_dict["cambio"];
		}
	}
	$datos_doc = array(
		"tienda_nombre"=>$datosdb->get_tienda_nombre(),
		"nombre_comercial"=>"LA CASA DE LA SEGURIDAD S.A.C.",
		"imagen_comercial"=>"logo_casa_de_seguridad.png",
		"ruc_comercial"=>"",
		"direccion_comercial"=>"Av. Argentina Nº 344 Interior I-25 / G06 / E14 / J-58 - malvinas - Lima - Lima",
		"telefonos_comercial"=>"997716381, 998361124",
		"notaventa_serie"=>"1",
		"notaventa_numeracion"=>"1",
		"comprobante_pago"=>$datosdb->get_comprobante_tipo(),
		"comprobante_numero"=>$datosdb->get_comprobante_numero(),
		"parent_comprobante_tipo"=>"",
		"parent_comprobante_numero"=>"",
		"tipo_pago"=>$datosdb->get_tipo_pago(),
		"tipo_moneda"=>$monedadb->get_nombre(),
		"fecha"=>$datosdb->get_fecha(),
		"hora"=>$datosdb->get_hora(),
		"cliente_nombre"=>$datosdb->get_cliente_nombre(),
		"cliente_direccion"=>"",
		"cliente_documento_tipo"=>$datosdb->get_cliente_documento_tipo(),
		"cliente_documento_numero"=>$datosdb->get_cliente_documento_numero(),
		"costo_subtotal"=>$datosdb->get_costo_subtotal(),
		"costo_igv"=>$datosdb->get_costo_igv(),
		"costo_total"=>$datosdb->get_costo_total(),
	);
	if ($datos_parent->get_venta_id() > 0){
		$datos_doc["parent_comprobante_tipo"] = $datos_parent->get_comprobante_tipo();
		$datos_doc["parent_comprobante_numero"] = $datos_parent->get_comprobante_numero();
	}
	$productos = array();
	$prodcdb = cls_Group_Venta_Producto::Venta($_POST["codigo"]);
	$prodcdb->cargar_datos(0, 0);
	for ($indice=0; $indice<$prodcdb->get_cantidad_cargados(); $indice++){
		if ($prodcdb->get_unidades($indice) > 0 || !$ocultar){
			array_push($productos, array(
				"unidades"=>$prodcdb->get_unidades($indice),
				"producto"=>$prodcdb->get_producto_nombre($indice),
				"precio_venta"=>$prodcdb->get_precio_venta($indice),
			));
		}
	}
	$d_datos = write_ticket($datos_doc, $productos);
	$respuestas["vista_ticket"] = $d_datos["vista_ticket"];
	$respuestas["width_ticket"] = $d_datos["width_ticket"];
	$d_datos = write_comprobante($datos_doc, $productos);
	$respuestas["vista_documento"] = $d_datos["vista_ticket"];
	$respuestas["width_documento"] = $d_datos["width_ticket"];
	$respuestas["estado"] = "ok";
	$respuestas["mensaje"] = "";
	echo(json_encode($respuestas));
}
function doc_compra(){
	$respuestas = array("estado"=>"error", "mensaje"=>"", "datos"=>array());
	$datosdb = cls_Compra::Indice($_POST["codigo"]);
	$prodcdb = cls_Group_Compra_Producto::Compra($_POST["codigo"]);
	$prodcdb->cargar_datos(0, 0);
	$monedadb = cls_Moneda::Codigo($datosdb->get_moneda_codigo());
	$moneda_simbolo = $monedadb->get_simbolo();
	if (strlen($datosdb->get_observaciones()) > 0){
		$_dict = json_decode($datosdb->get_observaciones(), true);
		if (isset($_dict["cambio"])){
			$cambio = $_dict["cambio"];
		}
	}
		
	$datos_doc = array(
		"tienda_nombre"=>"",
		"nombre_comercial"=>"LA CASA DE LA SEGURIDAD S.A.C.",
		"imagen_comercial"=>"logo_casa_de_seguridad.png",
		"ruc_comercial"=>"",
		"direccion_comercial"=>"Av. Argentina Nº 344 Interior I-25 / G06 / E14 / J-58 - malvinas - Lima - Lima",
		"telefonos_comercial"=>"997716381, 998361124",
		"notaventa_serie"=>"1",
		"notaventa_numeracion"=>"1",
		"comprobante_pago"=>$datosdb->get_operacion(),
		"comprobante_numero"=>$datosdb->get_estado_registro(),
		"parent_comprobante_tipo"=>"",
		"parent_comprobante_numero"=>"",
		"tipo_pago"=>"",
		"tipo_moneda"=>"Soles", //$monedadb->get_nombre(),
		"fecha"=>$datosdb->get_fecha(),
		"hora"=>"",
		"cliente_nombre"=>"",
		"cliente_direccion"=>"",
		"cliente_documento_tipo"=>"",
		"cliente_documento_numero"=>"",
		"responsable_nombre"=>$datosdb->get_responsable_nombre(),
		"responsable_documento_tipo"=>$datosdb->get_responsable_documento_tipo(),
		"responsable_documento_numero"=>$datosdb->get_responsable_documento_numero(),
		"costo_subtotal"=>0.0,
		"costo_igv"=>0.0,
		"costo_total"=>$datosdb->get_costo_total(),
	);
	$productos = array();
	for ($indice=0; $indice<$prodcdb->get_cantidad_cargados(); $indice++){
		if ($prodcdb->get_unidades($indice) > 0 ){
			array_push($productos, array(
				"unidades"=>$prodcdb->get_unidades($indice),
				"producto"=>$prodcdb->get_nombre($indice),
				"precio_compra"=>$prodcdb->get_precio_compra($indice),
			));
		}
	}
	$d_datos = write_compra($datos_doc, $productos);
	$respuestas["vista_ticket"] = $d_datos["vista_ticket"];
	$respuestas["width_ticket"] = $d_datos["width_ticket"];
	$respuestas["vista_documento"] = $d_datos["vista_ticket"];
	$respuestas["width_documento"] = $d_datos["width_ticket"];
	$respuestas["estado"] = "ok";
	$respuestas["mensaje"] = "";
	echo(json_encode($respuestas));
}
function doc_transferencia(){
		$respuestas = array("estado"=>"error", "mensaje"=>"", "datos"=>array());
		$ocultar = true;
		if (isset($_POST["ocultar"]) && $_POST["ocultar"]==0){$ocultar = false;}
		$datosdb = cls_Movimiento::Indice($_POST["codigo"]);
		$prodcdb = cls_Group_Movimiento_Producto::Movimiento($_POST["codigo"]);
		$prodcdb->cargar_datos(0, 0);
		$nombre_origen = $datosdb->get_origen_nombre();
		$nombre_destino = $datosdb->get_destino_nombre();
		if ($datosdb->get_origen_id() == 0){
			$nombre_origen = "Almacen";
		}
		if ($datosdb->get_destino_id() == 0){
			$nombre_destino = "Almacen";
		}
		$imagen_comercial = "logo_casa_de_seguridad.png";
		$doc_html = '';
		$doc_html .= '<div style="min-width:192px;max-width:813px;font-family:arial;font-size:12px;padding:20px 5px;background-color:#FFFFFF;color:#000000;background-image:url(libreria/imagenes/fondo_'.$imagen_comercial.');background-position:center;background-repeat:no-repeat;background-size: contain;">';
		$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
    	$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Fecha de registro: </strong>'.formato_de_fecha1($datosdb->get_fecha()).'</td>';
    	$doc_html .= '</tr>';
    	$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Remitente: </strong>'.$nombre_origen.'</td>';
    	$doc_html .= '</tr>';
    	$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Destinatario: </strong>'.$nombre_destino.'</td>';
    	$doc_html .= '</tr>';
    	$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Tipo de movimiento: </strong>'.$datosdb->get_tipo_movimiento().'</td>';
    	$doc_html .= '</tr>';
    	$doc_html .= '<tr>';
		$doc_html .= '<td style="margin:0px 10px;padding:2px 5px;"><strong>Estado: </strong>'.$datosdb->get_estado_registro().'</td>';
    	$doc_html .= '</tr>';
		$doc_html .= '</table>';
		
		
		$doc_html .= '<table style="width:100%;border-collapse: collapse;font-family:arial;font-size:12px;color:#000000;">';
		$doc_html .= '<tr style="height:25px;border-top:1px solid #000000;border-bottom:1px solid #000000;">';
		$doc_html .= '<th valign="middle" style="border-left:1px solid #000000;width:100px;">Cantidad</th>';
		$doc_html .= '<th valign="middle" style="border-left:1px solid #000000;border-right:1px solid #000000;">Descripción</th>';
		$doc_html .= '<th valign="middle" style="border-right:1px solid #000000;width:100px;">Precio venta</th>';
		$doc_html .= '</tr>';
		for ($indice=0; $indice<$prodcdb->get_cantidad_cargados(); $indice++){
			if ($prodcdb->get_unidades($indice) > 0 || !$ocultar){
				$doc_html .= '<tr style="height:25px;">';
				$doc_html .= '<td valign="middle" style="border-left:1px solid #000000;width:100px;text-align:center;">'.$prodcdb->get_unidades($indice).' unidad(es)</td>';
				$doc_html .= '<td valign="middle" style="border-left:1px solid #000000;border-right:1px solid #000000;padding:0px 10px;">'.$prodcdb->get_nombre($indice).'</td>';
				$doc_html .= '<td valign="middle" style="border-right:1px solid #000000;width:100px;text-align:right;padding:0px 10px;"> '.number_format($prodcdb->get_precio_venta($indice), 2, ".", "").'</td>';
				$doc_html .= '</tr>';
			}
		}
    	$doc_html .= '<tr style="height:5px;border-top:1px solid #000000;">';
    	$doc_html .= '<td valign="middle"></td>';
    	$doc_html .= '<td valign="middle"></td>';
    	$doc_html .= '<td valign="middle"></td>';
    	$doc_html .= '<td valign="middle"></td>';
    	$doc_html .= '</tr>';
		$doc_html .= '</table>';
		
		$doc_html .= '</div>';
		$respuestas["vista_ticket"] = $doc_html;
		$respuestas["width_ticket"] = 813;
		$respuestas["vista_documento"] = $doc_html;
		$respuestas["width_documento"] = 813;
		
		$respuestas["estado"] = "ok";
		$respuestas["mensaje"] = "";
		echo(json_encode($respuestas));
}
function doc_virtual(){
	$respuestas = array("estado"=>"error", "mensaje"=>"", "html"=>"", "datos"=>array());
	$ocultar = true;
	if (isset($_POST["ocultar"]) && $_POST["ocultar"]==0){$ocultar = false;}
	$tiendadb = cls_Tienda::Indice($_POST["txt_tienda"]);
	$datos_doc = array(
		"tienda_nombre"=>$tiendadb->get_nombre(),
		"nombre_comercial"=>"LA CASA DE LA SEGURIDAD S.A.C.",
		"imagen_comercial"=>"logo_casa_de_seguridad.png",
		"ruc_comercial"=>"",
		"direccion_comercial"=>"Av. Argentina Nº 344 Interior I-25 / G06 / E14 / J-58 - malvinas - Lima - Lima",
		"telefonos_comercial"=>"997716381, 998361124",
		"notaventa_serie"=>"1",
		"notaventa_numeracion"=>"1",
		"comprobante_pago"=>$_POST["txt_comprobante_tipo"],
		"comprobante_numero"=>$_POST["txt_comprobante_numero"],
		"parent_comprobante_tipo"=>"",
		"parent_comprobante_numero"=>"",
		"tipo_pago"=>$_POST["txt_tipo_pago"],
		"tipo_moneda"=>"PEN",
		"fecha"=>$_POST["txt_fecha"],
		"hora"=>"",
		"cliente_nombre"=>$_POST["txt_cliente"],
		"cliente_direccion"=>"",
		"cliente_documento_tipo"=>$_POST["txt_cliente_documento_tipo"],
		"cliente_documento_numero"=>$_POST["txt_cliente_documento_numero"],
		"costo_subtotal"=>$_POST["txt_costo_subtotal"],
		"costo_igv"=>$_POST["txt_costo_igv"],
		"costo_total"=>$_POST["txt_costo_total"],
	);
	$prodcdb = array();
	if (isset($_POST["txt_lista"]) && strlen($_POST["txt_lista"]) > 0){
		$prodcdb = json_decode($_POST["txt_lista"], true);
	}
	$productos = array();
	for ($indice=0; $indice<count($prodcdb); $indice++){
		if ($prodcdb[$indice]["unidades"] > 0 || !$ocultar){
			array_push($productos, array(
				"unidades"=>$prodcdb[$indice]["unidades"],
				"producto"=>$prodcdb[$indice]["producto_nombre"],
				"precio_venta"=>$prodcdb[$indice]["precio_venta"],
			));
		}
	}
	$d_datos = write_ticket($datos_doc, $productos);
	$respuestas["vista_ticket"] = $d_datos["vista_ticket"];
	$respuestas["width_ticket"] = $d_datos["width_ticket"];
	$d_datos = write_comprobante($datos_doc, $productos);
	$respuestas["vista_documento"] = $d_datos["vista_ticket"];
	$respuestas["width_documento"] = $d_datos["width_ticket"];
	$respuestas["estado"] = "ok";
	$respuestas["mensaje"] = "";
	echo(json_encode($respuestas));
}
function proforma_virtual(){
	$respuestas = array("estado"=>"error", "mensaje"=>"", "html"=>"", "datos"=>array());
	$tiendadb = cls_Tienda::Indice($_POST["txt_tienda"]);
	$prodcdb = array();
	if (isset($_POST["txt_lista"]) && strlen($_POST["txt_lista"]) > 0){
		$prodcdb = json_decode($_POST["txt_lista"], true);
	}
	$subtotal = 0.0;
	$igv = 0.0;
	$productos = array();
	for ($indice=0; $indice<count($prodcdb); $indice++){
		if ($prodcdb[$indice]["unidades"] > 0){
			array_push($productos, array(
				"unidades"=>$prodcdb[$indice]["unidades"],
				"producto"=>$prodcdb[$indice]["producto_nombre"],
				"precio_venta"=>$prodcdb[$indice]["precio_venta"],
			));
			$prod = $prodcdb[$indice]["precio_venta"]*$prodcdb[$indice]["unidades"];
			$igv += $prod*0.18;
			$subtotal += $prod;
		}
	}
	$datos_doc = array(
		"tienda_nombre"=>$tiendadb->get_nombre(),
		"nombre_comercial"=>"LA CASA DE LA SEGURIDAD S.A.C.",
		"imagen_comercial"=>"logo_casa_de_seguridad.png",
		"ruc_comercial"=>"",
		"direccion_comercial"=>"Av. Argentina Nº 344 Interior I-25 / G06 / E14 / J-58 - malvinas - Lima - Lima",
		"telefonos_comercial"=>"997716381, 998361124",
		"notaventa_serie"=>"1",
		"notaventa_numeracion"=>"1",
		"comprobante_pago"=>"Proforma",
		"comprobante_numero"=>$_POST["txt_comprobante_numero"],
		"parent_comprobante_tipo"=>"",
		"parent_comprobante_numero"=>"",
		"tipo_pago"=>"",
		"tipo_moneda"=>"PEN",
		"fecha"=>$_POST["txt_fecha"],
		"hora"=>"",
		"cliente_nombre"=>$_POST["txt_cliente"],
		"cliente_direccion"=>"",
		"cliente_documento_tipo"=>$_POST["txt_cliente_documento_tipo"],
		"cliente_documento_numero"=>$_POST["txt_cliente_documento_numero"],
		"costo_subtotal"=>$subtotal-$igv,
		"costo_igv"=>$igv,
		"costo_total"=>$subtotal,
	);
	$d_datos = write_comprobante($datos_doc, $productos);
	$respuestas["vista_ticket"] = $d_datos["vista_ticket"];
	$respuestas["width_ticket"] = $d_datos["width_ticket"];
	$d_datos = write_comprobante($datos_doc, $productos);
	$respuestas["vista_documento"] = $d_datos["vista_ticket"];
	$respuestas["width_documento"] = $d_datos["width_ticket"];
	
		$respuestas["estado"] = "ok";
		$respuestas["mensaje"] = "";
		echo(json_encode($respuestas));
}

if (isset($_POST["accion"])){
    if ($_POST["accion"] == "doc_venta"){
		doc_venta();
	} else if ($_POST["accion"] == "doc_factura"){
		$respuestas = array("estado"=>"error", "mensaje"=>"", "datos"=>array());
		echo(json_encode($respuestas));
    } else if ($_POST["accion"] == "doc_compra"){
		doc_compra();
	} else if ($_POST["accion"] == "doc_devolucion"){
		doc_devolucion();
	} else if ($_POST["accion"] == "doc_transferencia"){
		doc_transferencia();
    } else if ($_POST["accion"] == "doc_virtual"){
		doc_virtual();
    } else if ($_POST["accion"] == "proforma_virtual"){
		proforma_virtual();
    }
}
?>
