var tabla;
/* Para Pedido*/
//declaramos variables necesarias para trabajar con las Ventas y sus detalles
var impuesto=$("#impuesto").val();
console.log(impuesto);
var cont=0;
var detalles=0;
var indicepermisoborrar=-50;


//$("#montopago").change(actualizarpago);

//funcion que se ejecuta al inicio
function init(){
	mostrarform(false);
	listarruta();
	//buscarTasaDeCambio();

	$("#btnGuardar").on("click",function(e){
	/* Evitamos el envío real del formulario */
	e.preventDefault(); 
	validar();
	var val = $("#validado").val();
	console.log(val);
	if (val==1){  
		var total_pago	=	document.getElementById('total_pago').value;
		var diferencia	=	document.getElementById('diferencia').value;
		//if (diferencia<=0){ Solo para jvg	
			if (total_pago!=0) {  
				bootbox.confirm("¿Esta seguro que quiere guardar los dato?", function(result){
					if (result) {
						modificarValoresAnumerico();
						guardaryeditar(e);	
					}
				})  
			}else{
				bootbox.alert("No hay documento seleccionado para pagar");
			}
		//}else{
		//	bootbox.alert("Tiene una diferencia por favor abono a otro documento");
		//} 
	}
	});


	//cargamos los items al select Forma de Pago
	$.post("controladores/formapagosControlador.php?op=selectformapago", function(f){
		$("#idformapago").html(f);
		$('#idformapago').selectpicker('refresh');
	});
 
	//cargamos los items al select Tipo de Pagos
	 $.post("controladores/tipopagosControlador.php?op=selecttipopagos", function(t){
		$("#idtipopagos").html(t);
		$('#idtipopagos').selectpicker('refresh');
	}); 

	//cargamos los items al select Cuenta de Banco
 	$.post("controladores/cuentabancoControlador.php?op=selectCuentabanco", function(c){
		$("#idbancocuenta").html(c);
		$('#idbancocuenta').selectpicker('refresh');
	});
  
   //cargamos los items al select cliente
   $.post("controladores/pedidoControlador.php?op=selectCliente", function(r){
    $("#idcliente").html(r);
    $("#idcliente").val(0);
    $('#idcliente').selectpicker('refresh');
  });

  $.post("controladores/pedidoControlador.php?op=selectVendedor", function(r){
   $("#idvendedor").html(r);
   $('#idvendedor').selectpicker('refresh');
  });

	//Actualizamos el monto de pago y formateo el valor del monto del pago
	$("#montopago").keyup(function(event) {
		// skip for arrow keys
			if(event.which >= 37 && event.which <= 40){
					event.preventDefault();
				}
				var value  = $(this).val();
			$(this).val(decimal(value));
		//	chequeardocumentos();
	}); 

}

//funcion limpiar
function limpiar(){
	$('#formulario').data('bootstrapValidator').resetForm(true);
	$("#nombre").val("");
	$("#idpagocliente").val("");
	$("#idpagocliente").val("");
	$("#tipo_persona").val("");
	$("#idformapago").val("");
	$("#idtipopagos").val("");
	$("#idreferencia").val("");
	$("#montopago").val("0,00");

	//Solo Par JVGL
	//$("#montopago").val("1000000,00");
	//$("#diferencia").val("1000000,00");
	$("#total_pago").val("0,00");
	$("#total_pagob").val("0,00");
	$("#diferencia").val("0,00");

  // Para Pedido
  $('#formulario').data('bootstrapValidator').resetForm(true);
	$("#tipo_documento").val("");
	$("#num_documento").val("");
	$("#nombre").val("");
	$("#tipo_comprobante").val("");
	$("#serie_comprobante").val("");
	$("#num_comprobante").val("");
	$("#impuesto").val("");
	$('#montosubtotal').val(0);
	$('#montoapagarbs').val(0);
	$('#validar').val(0);
	$("#total_venta").val(0);
	$("#total_venta1").val(0);
	$(".filas").remove();
	$("#total").html("0");
	$("#idtransportista").val("");
	$("#idtransportista").selectpicker('refresh');
	$("#idcliente").val("");
	$("#idcliente").selectpicker('refresh');
	//buscarTasaDeCambio();

	//obtenemos la fecha actual
	var now 	= 	new Date();
  var today = 	new Date();
	var dd 		=	("0"+now.getDate()).slice(-2);
  var mm		=	("0"+(now.getMonth()+1)).slice(-2);
  var yyyy  =   now.getFullYear();
	var today	=	yyyy+'-'+mm+'-'+dd;
	$(fecha_hora).val(today);

	//marcamos el primer tipo_documento
	$("#tipo_comprobante").val("Pedido");
	/* $("#tipo_comprobante").selectpicker('refresh'); */
	marcarImpuesto();

	//marcamos el primer tipo_documento
	$("#tipo_documento").val("RIF");
	$("#tipo_documento").selectpicker('refresh');

}
//funcion para guardaryeditar
function modificarValoresAnumerico(){
	var cant	=	document.getElementsByName("montod[]");
	var cant1	=	document.getElementsByName("montodd[]");
	var prec	=	document.getElementsByName("abono[]");
	var prev	=	document.getElementsByName("pendiente[]");
	var total_pago1	=	$('#total_pago').val();
	var total_pago2	=	$('#total_pagob').val();
	var diferencia1	=	$('#diferencia').val();
	var montopago1 	=	$('#montopago').val();
	total_pago1		=	numero(total_pago1);
	total_pago2		=	numero(total_pago2);
	diferencia1 	=	numero(diferencia1);
	montopago1 		=	numero(montopago1);
	$('#total_pago').val(total_pago1);
	$('#total_pagob').val(total_pago2);
	$('#diferencia').val(diferencia1);
	$('#montopago').val(montopago1);
	for (var i = 0; i < cant.length; i++) {
		var Cmod		=	cant[i];
		var Cmod1		=	cant1[i];
		var Pcmod		=	prec[i];
		var Pvmod		=	prev[i];
		console.log('Pago en $ antes: '+Cmod.value)
		Cmod.value	=	numero(Cmod.value);
		Cmod1.value	=	numero(Cmod1.value);
		Pcmod.value	=	numero(Pcmod.value);
		Pvmod.value	=	numero(Pvmod.value);
		console.log('Pago en bs: '+Cmod1.value);
		console.log('Pago en $: '+Cmod.value)
	}
	
}
//Se busca el numero la tasa de cambio
function buscarTasaDeCambio(){
	idempresa_venta=$("#idempresa_venta").val();
	//alert ('idempresa_venta: '+idempresa_venta);
	$.post("controladores/empresaControlador.php?op=buscarTasaDeCambio",{idempresa_venta : idempresa_venta},
		function(data,status)
		{
			//alert ('estatus: '+status);
			data1=JSON.parse(data);
			//console.log('tasa de cambiobd: '+data1.tasa_dollar);
			//$("#tasa_dollar").val(number_format(data1.tasa_dollar),2);
			$("#tasacambioventa").val(data1.tasa_dollar);
			console.log('tasa de cambio:'+$("#tasacambioventa").val());
		//	console.log('#tasacambioventa:'+$("#tasa_dollar").val());
			//$("#tasa_euro").val(number_format(data1.tasa_euro),2);
		//	$("#tasa_euro").val(data1.tasa_euro);
	//		alert ('Control: '+data1.nrocontrol+' Factura: '+data1.nrofactura);
		});
}

//funcion listar
function listarruta(){
  idusuario = $("#idusuario").val();
	tabla=$('#tbllistado').dataTable({
		"aProcessing": true,//activamos el procedimiento del datatable
		"aServerSide": true,//paginacion y filrado realizados por el server
		dom: 'Bfrtip',//definimos los elementos del control de la tabla
		buttons: [
                  'copyHtml5',
                  'excelHtml5',
                  'csvHtml5',
                  'pdf'
		],
		columnDefs: [
			{
					targets: -1,
					className: 'dt-body-justify'
			}
		],
		"ajax":
		{
			url:'controladores/radarControlador.php?op=listarruta',
			type: "post",
      data: {
				idusuario : idusuario
			},
			dataType : "json",
      error:function(e){
				console.log(e.responseText);
			}
		},
    "bDestroy":true,
		"iDisplayLength":10,//paginacion
		"order":[[0,"desc"]]//ordenar (columna, orden)
	}).DataTable();
}

//******* Cuentas x Cobrar */
//funcion para guardaryeditar
function guardaryeditar(e){
	e.preventDefault();//no se activara la accion predeterminada 
	$("#btnGuardar").prop("disabled",true);
	var formData=new FormData($("#formulario")[0]);
	$.ajax({
		url: "controladores/pagoclienteControlador.php?op=guardaryeditar",
		type: "POST",
		data: formData,
		contentType: false,
		processData: false,

		success: function(datos){
			bootbox.alert(datos);
			mostrarform(false);
			tabla.ajax.reload();
		}
	});
	limpiar();
}

//funcion Validar
function validarmonto(){

	alert("validando");
	return false
}

//funcion mostrar formulario 
function mostrarform(flag){
	limpiar();
	if(flag){
		$("#listadoregistros").hide();
		$("#formularioregistros").show();
		$("#formularioregistros1").show();
		$("#btnGuardar").prop("disabled",false);
		$("#btnagregar").hide();
	}else{
		$("#listadoregistros").show();
		$("#formularioregistros").hide();
		$("#formularioregistros1").hide();
		$("#btnagregar").show();
	}
}

function mostrar(idpersona){
  bootbox.confirm("¿Desea realizar una cobranza?", function(result){
		
    if (result) {
      $("#listadoregistros").hide();
      $("#vendedorpedido").hide();
      $("#vendedorpedido1").hide();
      $("#vendedorcxc1").show();
      $("#vendedorcxc1").show();
		  $("#formularioregistros").show();
		  $("#formularioregistros1").show();
		  $("#btnGuardar").prop("disabled",false);
		  $("#btnagregar").hide();  
      $.post("controladores/personaControlador.php?op=mostrar",{idpersona : idpersona},
      function(data,status)
      {
        data=JSON.parse(data);
        mostrarform(true);
        $("#nombre").val(data.nombre);
        $("#agenteretencion").val(data.agenteretencion);
        $("#idpersona").val(data.idpersona);
        //console.log('ide de persona: '+$("#idpersona").val());
      });
    $.post("controladores/estadocuentaclienteControlador.php?op=listarDetallecobro&id="+idpersona,function(r){
        $("#detalles").html(r);
      });
		}
	})
	
}

//funcion para desactivar
function eliminar(idpersona){
	bootbox.confirm("¿Esta seguro de eliminar este dato?", function(result){
		if (result) {

			$.post("controladores/personaControlador.php?op=eliminar", {idpersona : idpersona }, function(e){
				bootbox.alert(e);
				tabla.ajax.reload();
			});
		}
	})
}

//cancelar form
function cancelarform(){
	limpiar();
	mostrarform(false);
}
// Funcion para verificar el monto del pago
function actualizarpago() {
    var total_pago	=	document.getElementById('total_pago').value;
	var diferencia	=	document.getElementById('diferencia').value;
	var montopago	=	document.getElementById('montopago').value;
	
	// Convertir a numerico para hacer los calculo
	total_pago 		= 	numero(total_pago);
	diferencia 		= 	numero(diferencia);
	montopago 		= 	numero(montopago);

	diferencia 		=	montopago - total_pago;	

	// formatear numero para la vista.
	diferencia 		= 	number_format(diferencia,2);
	document.getElementById('diferencia').style.color='blue';
	$("#diferencia").val(diferencia);
}

function change_checkbox(id,el){
	//var monto1				=	document.getElementsByName("montod[]");
	var monto1				=	document.getElementsByName("montodd[]");
	var abono1				=	document.getElementsByName("abono[]");
	var pendiente1		=	document.getElementsByName("pendiente[]");
	var tasa_dollar1	=	document.getElementsByName("tasa_dollar[]");
	var abono11				=	document.getElementsByName("abono1[]");
	var pendiente11		=	document.getElementsByName("pendiente1[]");
	var total_pago		=	document.getElementById("total_pago").value;
	var total_pagob		=	document.getElementById("total_pagob").value;
	var diferencia		=	document.getElementById("diferencia").value;
	var montopago			=	document.getElementById("montopago").value;
	var montof 				= 	monto1[id].value;
	var totalf				=	0;
	var abono					= 0;
	var pendiente			=	0;

	if (total_pago==""){
		total_pago 	= 	0;
	}
	// Se verifica si la variable seleccion de documento no esta definida y se le asigna un valor
	if (typeof seleccion === 'undefined') {
		seleccion = 'si';
	}
	// Se verifica si la variable seleccion de documento no esta definida y se le asigna un valor
	if (typeof idparcial === 'undefined') {
		idparcial = -1;
	}
	/* Convertir a numerico para hacer los calculo*/
	total_pago 			= 	numero(total_pago);
	diferencia 			= 	numero(diferencia);
	montopago 			= 	numero(montopago);
	montof					=		numero(montof);
	abono 					= 	numero(abono1[id].value);
	pendiente 			= 	numero(pendiente1[id].value);
	tasa_dollar			= 	(tasa_dollar1[id].value)*1;
	totalf 					= 	montof;
	console.log('Antes tp: '+total_pago+' dif: '+diferencia+' montof: '+montof);
	if (el.checked){
		console.log('montopago: '+montopago+' dif: '+diferencia+' montof: '+montof);
		if ((montopago>0)&&(diferencia>0)){
			abonoid				= 0;
			pendienteid			= 0;
			estado 	= 'Pagada'
			if (diferencia>=montof){
				abono 					= 0;
				pendiente 			= 0;
			}else{
				pendiente 			= montof - diferencia;
				abono			 			= montof - pendiente;
				totalf 					= abono;
				estado					= 'Parcial'	
			}
			marcado(id,abono,pendiente,estado,'blue');
			total_pago 	= total_pago + totalf;
			total_pagob = (total_pago*tasa_dollar) + (totalf*tasa_dollar);
			console.log('total_pago: '+total_pago+' total_pagob: '+total_pagob+' tasa_dollar: '+tasa_dollar);
		}else{
			if ((total_pago>=montopago)&&(montopago>0)){
				bootbox.alert("Ya excedio el monto de pago y no puede seleccionar mas documentos");
				el.checked		=	false;
			}else{
				bootbox.alert("Debe Colocar el Monto de Pago");
				el.checked		=	false;
			}
		} 
		// Solo Para JVG
			/* abonoid				= 0;
			pendienteid			= 0;
			estado 				= 'Pagada'
			if (diferencia>=montof){
				abono 					= 0;
				pendiente 				= 0;
			}else{
				pendiente 				= montof - diferencia;
				abono			 		= montof - pendiente;
				totalf 					= abono;
				estado					= 'Parcial'	
			} 
			marcado(id,abono,pendiente,estado,'blue');
			total_pago 	= total_pago + totalf;
			total_pagob = (total_pago*tasa_dollar) + (totalf*tasa_dollar);
			console.log('total_pago: '+total_pago+' total_pagob: '+total_pagob+' tasa_dollar: '+tasa_dollar);*/
		//
	}else{
		if (abono>0){
			totalf = abono;
		}  
		abono 			= 0;
		pendiente 		= 0;
		desmarcado(id,abono,pendiente,'Pendiente','red');
		total_pago 	= total_pago - totalf;
		total_pagob = (total_pago*tasa_dollar) - (totalf*tasa_dollar);
		console.log('total_pago: '+total_pago+' total_pagob: '+total_pago*tasa_dollar+' tasa_dollar: '+tasa_dollar);
	}
	diferencia		=	montopago - total_pago;
	if (diferencia<=0){
		$("#montopagod").val(0);
		document.getElementById('diferencia').style.color	=	'red';
		document.getElementById('montopagod').style.color	=	'blue';
	}else{
		document.getElementById('diferencia').style.color	=	'blue';
		document.getElementById('montopagod').style.color	=	'red';
	}
	console.log('Despues tp: '+total_pago+' dif: '+diferencia+' montof: '+montof);
	total_pago 		= 	number_format(total_pago,2);
	diferencia 		= 	number_format(diferencia,2);
	console.log('Despues formato tp: '+total_pago+' dif: '+diferencia+' montof: '+montof);
	$("#total_pago").val(total_pago);
	$("#total_pagob").val(total_pagob);
	$("#diferencia").val(diferencia);
	$("#montopagod").val(diferencia);
}

function marcado(id,abonoo,pendientee,estadoo,colorr) {
	var num_comprobante		=	document.getElementsByName("num_comprobante[]");
	var tipo_comprobante	=	document.getElementsByName("tipo_comprobante[]");
	var estado				=	document.getElementsByName("estado[]");
	var abono				=	document.getElementsByName("abono[]");
	var pendiente			=	document.getElementsByName("pendiente[]");

	num_comprobante[id].style.textDecoration	=	'line-through';
	tipo_comprobante[id].style.textDecoration	=	'line-through';
	abono[id].value								=	number_format(abonoo,2);
	pendiente[id].value							=	number_format(pendientee,2);
	estado[id].value							=	estadoo;
	estado[id].style.color						=	colorr;
}

function desmarcado(id,abonoo,pendientee,estadoo,colorr) {
	var num_comprobante		=	document.getElementsByName("num_comprobante[]");
	var tipo_comprobante	=	document.getElementsByName("tipo_comprobante[]");
	var estado				=	document.getElementsByName("estado[]");
	var abono				=	document.getElementsByName("abono[]");
	var pendiente			=	document.getElementsByName("pendiente[]");

	num_comprobante[id].style.textDecoration	=	'';
	tipo_comprobante[id].style.textDecoration	=	'';
	abono[id].value								=	number_format(abonoo,2);
	pendiente[id].value							=	number_format(pendientee,2);
	estado[id].value							=	estadoo;
	estado[id].style.color						=	colorr;
}


/*********** Pedido */
function mostrarp(idpersona){
  bootbox.confirm("¿Desea realizar pedido?", function(result){
		
    if (result) {
      $("#listadoregistros").hide();
      $("#formularioregistros").show();
      $("#vendedorcxc").hide();
      $("#vendedorpedido").show();
      $("#formularioregistros1").show();
      $("#vendedorcxc1").hide();
      $("#vendedorpedido1").show();
      
		  
      $("#btnagregar").hide();
      $("#btnGuardar").hide();
      $("#btnCancelar").show();
      detalles=0;
      $("#btnAgregarArt").show();
      $("#btnAgregarArtb").hide();
      $("#btnAgregarArtc").hide();
      $("#btnAgregarSer").hide();
      $("#cod_barra").val("");
      $("#cod_barra").focus();
      buscarclienteid(idpersona);
      buscardespachoid(idpersona);
      listarArticulos(1);
		  listarArticulosb(1);
		  listarArticulosc(1);
		  buscarNroFacturaControl();
	  	buscarTasaDeCambio(); 
      $("#idcliente").val(idpersona);
			$("#idcliente").selectpicker('refresh');
     //obtenemos la fecha actual
	    var now 	= 	new Date();
      var today = 	new Date();
      var dd 		=	("0"+now.getDate()).slice(-2);
      var mm		=	("0"+(now.getMonth()+1)).slice(-2);
      var yyyy  =   now.getFullYear();
      var today	=	yyyy+'-'+mm+'-'+dd;
      $("#fecha_hora1").val(today);
      

      /* $.post("controladores/personaControlador.php?op=mostrar",{idpersona : idpersona},
      function(data,status)
      {
        data=JSON.parse(data);
        mostrarform(true);
        $("#nombre").val(data.nombre);
        $("#agenteretencion").val(data.agenteretencion);
        $("#idpersona").val(data.idpersona);
        //console.log('ide de persona: '+$("#idpersona").val());
      });
      $.post("controladores/estadocuentaclienteControlador.php?op=listarDetallecobro&id="+idpersona,function(r){
        $("#detalles").html(r);
      }); */
		}
	})
	
}

// funcion para buscar el cliente
function buscarclienteid(idcliente) {
	var idpersona = idcliente;
	//alert ('tipo y numero: '+ tipo_documento11+ ' '+num_documento11);
	$.ajax({
		url: 'controladores/personaControlador.php?op=buscarclienteid',
		method: 'post',
		data: {
			idpersona : idpersona
		},
		})
		.done(function(datos) {
		/* Depuramos los datos recibidos */
		datos=JSON.parse(datos);
		console.log( datos );
		/* Se verifica si se delvovio algun resultado */
		if ((datos == null)||(datos == "undefined")) {
			/* hacer algo */
			bootbox.confirm("El cliente no existe necesita crearlo", function(result){
				if (result) {
					$("#tipo_documento1").val(tipo_documento11);
					$("#tipo_documento1").selectpicker('refresh');
					tipo_documento1.style.backgroundColor 	= "#D5D5CE";
					$("#num_documento1").val(num_documento11);
					num_documento1.style.backgroundColor 	= "#D5D5CE";
					$('#myModalCliente').modal('show');
				}
			})
			return;
		}
		/* Colocamos los datos del cliente */
		//$("#nombre_cliente").val(datos.nombre);
				
		//nombre_cliente.style.backgroundColor 	= "#D5D5CE";
		//$('#formulario').bootstrapValidator('false');
		//alert ('nombre y id: '+ datos.nombre+ '--'+datos.idpersona);
		$("#num_documento").val(datos.num_documento);
		$("#tipo_documento").val(datos.tipo_documento);
		$("#tipo_documento").selectpicker('refresh');
		$('#idvendedor').val(datos.idvendedor);
		console.log('datos.idvendedor: '+datos.idvendedor)
		$('#idvendedor').selectpicker('refresh');
		verificarlistaprecio(datos.idlistaprecio);
		})
		.fail(function() {
			alert( "Error" );
		})
		.always(function() {
		/* Seleccionamos el texto para que se pueda sobreescribir por la siguiente lectura */
		$("input[name='cod_barra']").select();
		});

}

//Se habilita la lista de precio para el cliente seleccionado
function verificarlistaprecio(idlistaprecio) {
	if (idlistaprecio==1){
		$("#btnAgregarArt").show();
		$("#btnAgregarArtb").hide();
		$("#btnAgregarArtc").hide();
	}
	else if (idlistaprecio==2){
		$("#btnAgregarArt").hide();
		$("#btnAgregarArtb").show();
		$("#btnAgregarArtc").hide();
	}else{
		$("#btnAgregarArt").hide();
		$("#btnAgregarArtb").hide();
		$("#btnAgregarArtc").show();
	}
}

//Buscamo la direccion de despacho del cliente
function buscardespachoid(idcliente) {
	var idpersona = idcliente;
	$.post("controladores/personaControlador.php?op=buscardespachoid", {idpersona : idpersona}, function(r){
		$("#idclientedespacho").html(r);
   		$('#idclientedespacho').selectpicker('refresh');
	});   
}

function marcarImpuesto(){
	var tipo_comprobante=$("#tipo_comprobante option:selected").text();
	var impuestotexto 						= document.getElementById("impuesto");
	impuestotexto.style.backgroundColor 	= "#D5D5CE";
	if (tipo_comprobante=='Factura') {
		$("#impuesto").val(impuesto);
	}else{
		$("#impuesto").val("0");
	}
	
}

function listarArticulos(idalmacen1){
	console.log('Estamos en listara y almacen:'+idalmacen1);
	tabla=$('#tblarticulos').dataTable({
		"aProcessing": true,//activamos el procedimiento del datatable
		"aServerSide": true,//paginacion y filrado realizados por el server
		dom: 'Bfrtip',//definimos los elementos del control de la tabla
		buttons: [

		],
		"ajax":
		{
			url:'controladores/ventanControlador.php?op=listarArticulos',
			type: "post",
			data: {
				idalmacen1 : idalmacen1
			},
			dataType : "json",
			error:function(e){
				console.log(e.responseText);
			}
		},
		"bDestroy":true,
		"iDisplayLength":5,//paginacion
		"order":[[0,"desc"]]//ordenar (columna, orden)
	}).DataTable();
}

function listarArticulosb(idalmacen1){
	console.log('Estamos en listarb y almacen:'+idalmacen1);
	tabla=$('#tblarticulosb').dataTable({
		"aProcessing": true,//activamos el procedimiento del datatable
		"aServerSide": true,//paginacion y filrado realizados por el server
		dom: 'Bfrtip',//definimos los elementos del control de la tabla
		buttons: [

		],
		"ajax":
		{
			url:'controladores/ventanControlador.php?op=listarArticulosb',
			type: "post",
			data: {
				idalmacen1 : idalmacen1
			},
			dataType : "json",
			error:function(e){
				console.log(e.responseText);
			}
		},
		"bDestroy":true,
		"iDisplayLength":5,//paginacion
		"order":[[0,"desc"]]//ordenar (columna, orden)
	}).DataTable();
}

function listarArticulosc(idalmacen1){
	console.log('Estamos en listarc y almacen:'+idalmacen1);
	tabla=$('#tblarticulosc').dataTable({
		"aProcessing": true,//activamos el procedimiento del datatable
		"aServerSide": true,//paginacion y filrado realizados por el server
		dom: 'Bfrtip',//definimos los elementos del control de la tabla
		buttons: [

		],
		"ajax":
		{
			url:'controladores/ventanControlador.php?op=listarArticulosc',
			type: "post",
			data: {
				idalmacen1 : idalmacen1
			},
			dataType : "json",
			error:function(e){
				console.log(e.responseText);
			}
		},
		"bDestroy":true,
		"iDisplayLength":5,//paginacion
		"order":[[0,"desc"]]//ordenar (columna, orden)
	}).DataTable();
}

function listarArticulosd(idalmacen1){
	console.log('Estamos en listard y almacen:'+idalmacen1);
	tabla=$('#tblarticulosd').dataTable({
		"aProcessing": true,//activamos el procedimiento del datatable
		"aServerSide": true,//paginacion y filrado realizados por el server
		dom: 'Bfrtip',//definimos los elementos del control de la tabla
		buttons: [

		],
		"ajax":
		{
			url:'controladores/ventanControlador.php?op=listarArticulosd',
			type: "post",
			data: {
				idalmacen1 : idalmacen1
			},
			dataType : "json",
			error:function(e){
				console.log(e.responseText);
			}
		},
		"bDestroy":true,
		"iDisplayLength":5,//paginacion
		"order":[[0,"desc"]]//ordenar (columna, orden)
	}).DataTable();
}
//Se busca el numero de factura y control
function buscarNroFacturaControl(){
	idempresa_venta=$("#idempresa_venta").val();
	var serie_comprobante 		= document.getElementById("serie_comprobante");
	var num_comprobante 		= document.getElementById("num_comprobante");
	var num_pedido 				= document.getElementById("num_pedido");
//	alert ('idempresa_venta: '+idempresa_venta);
	$.post("controladores/empresaControlador.php?op=buscarNroFacturaControl",{idempresa_venta : idempresa_venta},
		function(data,status)
		{
			//alert ('estatus: '+status);
			data1=JSON.parse(data);
			/* $("#serie_comprobante").val(data1.nrocontrol);
			serie_comprobante.style.backgroundColor 	= "#D5D5CE";
			$("#num_comprobante").val(data1.nrofactura);
			num_comprobante.style.backgroundColor 		= "#D5D5CE"; */
			$("#num_pedido").val(data1.nropedido);
			num_pedido.style.backgroundColor 		= "#D5D5CE";
	//		alert ('Control: '+data1.nrocontrol+' Factura: '+data1.nrofactura);
		});
}

function agregarDetalle(idarticulo,idalmacen,articulo,precio_venta,precio_ventad,porcentaje,nrolote,fechalote,exento,impuestoart18,preciopvp,preciopvpd){
	var cantidad		=	1;
	var descuento		=	0;
	var impoart18		=	impuestoart18;
	var idpedido		=	-300;
	/* en pedido oculto el art18
	/* var imp18_empresa	=	$('#impuestoart18_empresa').val(); */
	var imp18_empresa	=	'no';
	var tasadollar		=	$("#tasa_dollar").val();
	if (idarticulo!="") {
		var iva 			      = 0;
		var subtotal		    = 0;
		var subtotalsiniva	= 0;
		var exentot		      = 0;
		var precio 			    = 0;
		var preciod 		    = 0;
		var salida 			    = convertDateFormat(fechalote);
		var fechalotef		  = convertDateLote(fechalote);
		precio_venta 		    = precio_ventad*tasadollar;
		preciopvp			      = preciopvpd*tasadollar;
		if (fechalote=='N/A'){
			fechalotef	= fechalote;
		}
		if (exento=='si'){
			precio 		= precio_venta*1;
			preciod		= precio_ventad*1;
			exentot		= precio_venta*1;
			articulo 	= articulo + ' (E)';
			iva			= 0;
		}else{
			iva			= (precio_venta*impuesto)/100;
			precio		= precio_venta*1;
			preciod		= precio_ventad*1;
			exentot		= 0;
		}
		/* En pedido oculto art18 y pvpv */
		if (imp18_empresa=='si'){
			td			=	'<td><input type="text" name="impoart18[]" id="impoart18[]" style="text-align:right;width:120px" value="'+number_format(impoart18,2)+'" ></td>';
			td1			=	'<td><input type="text" name="precio_ventapvp[]" id="precio_ventapvp[]" style="text-align:right;width:120px" value="'+number_format(preciopvp,2)+'"></td>';
		}else{
			td			=	'<input type="hidden" name="impoart18[]" id="impoart18[]" value="'+number_format(impoart18,2)+'">';
			td1			=	'<input type="hidden" name="precio_ventapvp[]" id="precio_ventapvp[]" value="'+number_format(preciopvp,2)+'">';
		}

		subtotalsiniva	= cantidad*precio_venta;
		subtotal		= cantidad*precio;
		subtotald		= cantidad*preciod;
		console.log('fecha: '+salida+'precio: '+precio+'exentot: '+exentot);
		var fila='<tr class="filas" id="fila'+cont+'">'+
        '<td><button type="button" class="btn btn-danger" onclick="eliminarDetalle('+cont+')">X</button></td>'+
		'<td><input type="hidden" name="idarticulo[]" value="'+idarticulo+'">'+articulo+'</td>'+
		'<td><input type="text" name="cantidad[]" id="cantidad[]" style="text-align:right;width:80px" value="'+number_format(cantidad)+'"></td>'+
		/* en pedido oculto el precio en bolivares 
		'<td><input type="text" name="precio_venta[]" id="precio_venta[]" style="text-align:right;width:120px" value="'+number_format(precio,2)+'"></td>'+ */
		'<td><input type="text" name="precio_ventad[]" id="precio_ventad[]" style="text-align:right;width:120px" value="'+number_format(precio_ventad,2)+'"></td>'+
		td1+ 
		'<input type="hidden" name="porcentaje[]" id="porcentaje[]" style="text-align:right;width:70px" value="'+number_format(porcentaje,2)+'">'+
		'<input type="hidden" name="descuento[]" id="descuento[]" style="text-align:right;width:120px" value="'+number_format(descuento,2)+'" >'+
		td+ 
		'<td><input type="text" style="text-align:right;width:120px" name="subtotald[]" id="subtotald[]"  value="'+number_format(subtotald,2)+'"></td>'+
        //'<td><span id="subtotal'+cont+'" name="subtotal">'+subtotal+'</span></td>'+
		'<td><button type="button" onclick="modificarSubtotales()" class="btn btn-info"><i class="fa fa-refresh"></i></button>'+
		'<input type="hidden" name="nrolote[]" value="'+nrolote+'">'+
		'<input type="hidden" name="idpedidosolo[]" id="idpedidosolo[]" value="'+(idpedido*1)+'">'+
		'<input type="hidden" name="idalmacen[]" id="idalmacen[]" value="'+idalmacen+'">'+
		'<input type="hidden" name="iva[]" value="'+iva+'">'+
		'<input type="hidden" name="exentot[]" value="'+exentot+'">'+
		'<input type="hidden" name="precio_venta[]" id="precio_venta[]" value="'+number_format(precio,2)+'"></input>'+
		'<input type="hidden"  name="subtotal[]" id="subtotal[]"  value="'+number_format(subtotal,2)+'">'+
		'</td>'+
		'</tr>';
		cont++;
		detalles++;
		$('#detalles1').append(fila);
		modificarSubtotales();

	}else{
		alert("error al ingresar el detalle, revisar las datos del articulo ");
	}

}

function modificarSubtotales(boton){
	var idart		=	document.getElementsByName("idarticulo[]");
	var cant		=	document.getElementsByName("cantidad[]");
	var prev		=	document.getElementsByName("precio_venta[]");
	var prevd		=	document.getElementsByName("precio_ventad[]");
	var desc		=	document.getElementsByName("descuento[]");
	var art8		=	document.getElementsByName("impoart18[]");
	var porc		=	document.getElementsByName("porcentaje[]");
	var sub			=	document.getElementsByName("subtotal[]");
	var subd		=	document.getElementsByName("subtotald[]");
	var ivao		=	document.getElementsByName("iva[]");
	var exet		=	document.getElementsByName("exentot[]");
	var impart18emp =	$("#impuestoart18_empresa").val();

	for (var i = 0; i < cant.length; i++) {
		var inpV			=	cant[i];
		var inpP			=	prev[i];
		var inpPd			=	prevd[i];
		var inpS			=	sub[i];
		var inpSd			=	subd[i];
		var des				=	desc[i];
		var iart18			=	art8[i];
		var por				=	porc[i];
		var subt			=	sub[i];
		var subtd			=	subd[i];
		var ivat 			=	ivao[i];
		var exento 			=	exet[i];	
		var	imp 			= 	1+(impuesto/100);
		var precio			=	numero(inpP.value*imp);
		var preciod			=	numero(inpPd.value*imp);
		var precioSiva 		= 	numero(inpP.value);
		var precioSivad		= 	numero(inpPd.value);
		var precioNew		=	0;
		var precioNewCiva 	= 	0;
		var ivaNew			=	0;
		var porT			=	0;
		var total 			=	0;	

		console.log('impuesto'+imp);
		console.log('precio: '+precio);
		console.log('Precio sin iva: '+precioSiva);
		if (numero(por.value)>0){
			if (numero(inpP.value)>0){
				porT			= (precioSiva*numero(por.value))/100;
				console.log('MontoPorcentaje: '+porT);
				precioNew		= precioSiva - porT;
				ivaNew			= (precioNew*impuesto)/100;
				precioNewCiva	= precioNew + ivaNew;
				if (impart18emp=='si'){
					inpS.value		= ((numero(inpV.value)*precioNew)+(numero(inpV.value)*numero(iart18.value))-numero(des.value));
				}else{
					inpS.value		= (numero(inpV.value)*precioNew)-numero(des.value);
				}

				console.log('precioNuevo: '+precioNew+' IvaNuevo:'+ivaNew);
				console.log('subtotal nuevo: '+inpS.value);
			}else{
				total 		= Totales();
				console.log('Total: '+total)
				porT		= (total*numero(por.value))/100;
				ivaNew		= (porT*impuesto)/100;
				inpS.value	= porT;
				//inpS.value=1000;
			}
			if (exento.value==0){
				ivat.value	= number_format(ivaNew,2);
			}else{
				ivaNew		= 0;
				ivat.value	= number_format(ivaNew,2);
			}
		}else{
			
			inpS.value		=	((numero(inpV.value)*numero(inpP.value))+(numero(inpV.value)*numero(iart18.value))-numero(des.value));
			inpSd.value		=  numero(inpV.value)*numero(inpPd.value)
		}
		//document.getElementsByName("subtotal")[i].innerHTML=number_format(inpS.value,2);
		subt.value = number_format(inpS.value,2);
		subtd.value = number_format(inpSd.value,2);
	}
	calcularTotales(boton);
}

function calcularTotales(boton){
	//var sub 	= document.getElementsByName("subtotal");
	var sub			=	document.getElementsByName("subtotal[]");
	var iv			= 	document.getElementsByName("iva[]");
	var exento		=	document.getElementsByName("exentot[]");
	var cant		=	document.getElementsByName("cantidad[]");
	var pvp			=	document.getElementsByName("precio_ventapvp[]");
	var impart18emp =	$("#impuestoart18_empresa").val();
	var	imp 		= 	(impuesto/100);
	var total		= 0;
	var ivatt		= 0;
	var exentott	= 0;
	var totalconiva	= 0;
	var totalpvpiva	= 0;
	//var tasadollar  = numero($("#tasa_dollar").val());
	var tasadollar  = $("#tasa_dollar").val();
	console.log('tasadollar: '+tasadollar)
	for (var i = 0; i < sub.length; i++) {
		var subt	=	sub[i];
		var ivat	=	iv[i];
		var exentot	=	exento[i];
		var CanT	=	cant[i];
		var pvpt	=	pvp[i];
		//total += document.getElementsByName("subtotal")[i].value;
		total 		+= 	numero(subt.value);
		ivatt  		+= 	numero(subt.value)*imp;
		totalpvpiva +=	(((numero(pvpt.value)*CanT.value))-numero(subt.value))*imp;
		exentott	+= 	(numero(exentot.value)*CanT.value);
	}
	console.log('impart18emp: '+impart18emp);
	// en pedido impart18emp='no'
	impart18emp='no';
	if (impart18emp=='si'){
		totalconiva 	=	total + ivatt + totalpvpiva;
	}else{
		totalconiva 	=	total + ivatt;
	}
	
	
	/* $("#subtotal").html("Bs." + number_format(total,2)); */
	$("#subtotald").html("$." +number_format(total/tasadollar,2));	
	/* $("#iva").html("Bs." + number_format(ivatt,2)); 
	$("#ivad").html("$." +number_format(ivatt/tasadollar,2));
	$("#ivap").html("Bs." + number_format(totalpvpiva,2));
	$("#ivapd").html("$." +number_format(totalpvpiva/tasadollar,2));
	$("#exento").html("Bs." + number_format(exentott,2));
	$("#exentod").html("$." +number_format(exentott/tasadollar,2)); 
	$("#total").html("Bs." + number_format(totalconiva,2));*/
	$("#totald").html("$." + number_format(total/tasadollar,2));
	$("#total_venta1").val(total);
	$("#total_venta").val("");
	$("#total_venta").val(total);
	$("#total_ventad").val(total/tasadollar);
	evaluar(boton);
}

function Totales(){
	//var sub 	= document.getElementsByName("subtotal");
	var sub		=	document.getElementsByName("subtotal[]");
	var prev	= 	document.getElementsByName("precio_venta[]");
	var total	= 	0.0;

	for (var i = 0; i < sub.length; i++) {
		if (numero(prev[i].value)>0){
			total += numero(sub[i].value);
		}
	}
	return total;
}

function evaluar(){
	$("#cod_barra").val("");
	$("#cod_barra").focus();    
	if (detalles>0) 
	{
		$("#btnGuardar").show();
	}
	else
	{
		$("#btnGuardar").hide();
		cont=0;
	}
}


/******* Fin de pedido */

init();