function ListaFormaDeUnidades() { //FormaListaCompraCantidades global $action; $oProducto = new producto(); $ot = getTemplate("PopupCarritoCompra"); if (!$ot) { error(__FILE__ . __LINE__, "Info: template no encontrado"); return false; } $ot->resetSeries(array("IdProducto", "Referencia", "Nombre", "tBorrar", "tEditar", "tSeleccion", "vUnidades")); $tamPagina = $ot->getPagina(); $indice = getSesionDato("PaginadorSeleccionCompras2"); $carrito = getSesionDato("CarritoMover"); //echo q($carrito,"Carrito Cantidades"); $costescarrito = getSesionDato("CarroCostesMover"); $quitar = _("Quitar"); $ot->fijar("tTitulo", _("Carrito para Traslado")); //$ot->fijar("comboAlmacenes",getSesionDato("ComboAlmacenes")); $ot->fijar("comboAlmacenes", genComboAlmacenes(getParametro("AlmacenCentral"))); $salta = 0; $num = 0; foreach ($carrito as $key => $value) { $salta++; if ($num <= $tamPagina and $salta >= $indice) { $num++; if ($oProducto->Load($key)) { $referencia = $oProducto->getReferencia(); $nombre = $oProducto->getNombre(); } else { $referencia = ""; $nombre = ""; } $ot->fijarSerie("vReferencia", $referencia); $ot->fijarSerie("vNombre", $nombre); $ot->fijarSerie("tBorrar", $quitar); $ot->fijarSerie("vUnidades", $value); $ot->fijarSerie("vPrecio", $costescarrito[$key]); $ot->fijarSerie("IdProducto", $oProducto->getId()); } } if (!$salta) { $ot->fijar("aviso", gas("aviso", _("Carrito vacío"))); $ot->eliminaSeccion("haydatos"); } else { $ot->fijar("aviso"); $ot->confirmaSeccion("haydatos"); } $ot->paginador($indice, false, $num); $ot->fijar("action", $action); $ot->terminaSerie(); echo $ot->Output(); }
function CrearProducto($mudo, $referencia, $descripcion, $precioventa, $precioonline, $coste, $idfamilia, $idsubfamilia, $idprovhab, $codigobarras, $idtalla, $idcolor, $idmarca, $refprovhab, $idalias0, $idalias1, $numeroserie, $undsxcont, $ventamenudeo, $unidadmedida, $fv, $idlabhab, $lote, $idcontenedor, $metaproducto, $servicio, $condventa) { global $action; $oProducto = new producto(); $oProducto->Crea(); if (!$idfamilia) { $idfamilia = getParametro("IdFamiliaDefecto"); } if (!$idsubfamilia) { $idfamilia = getParametro("IdFamiliaDefecto"); } //$oProducto->setNombre($nombre); $oProducto->setReferencia($referencia); $oProducto->setDescripcion($descripcion); $oProducto->setLang(getSesionDato("IdLenguajeDefecto")); $oProducto->setPrecioVenta($precioventa); $oProducto->setPrecioOnline($precioonline); $oProducto->set("Costo", $coste, FORCE); $oProducto->set("IdFamilia", $idfamilia, FORCE); $oProducto->set("IdSubFamilia", $idsubfamilia, FORCE); $oProducto->set("IdProvHab", $idprovhab, FORCE); $oProducto->set("IdLabHab", $idlabhab, FORCE); $oProducto->set("CodigoBarras", $codigobarras, FORCE); $oProducto->set("RefProvHab", $refprovhab, FORCE); $oProducto->set("Serie", $numeroserie, FORCE); $oProducto->set("Servicio", $servicio, FORCE); $oProducto->set("MetaProducto", $metaproducto, FORCE); $oProducto->set("Lote", $lote, FORCE); $oProducto->set("FechaVencimiento", $fv, FORCE); $oProducto->set("UnidadMedida", $unidadmedida, FORCE); $oProducto->set("VentaMenudeo", $ventamenudeo, FORCE); $oProducto->set("CondicionVenta", $condventa, FORCE); $oProducto->set("UnidadesPorContenedor", $undsxcont, FORCE); $oProducto->set("IdTalla", $idtalla, FORCE); $oProducto->set("IdColor", $idcolor, FORCE); $oProducto->set("IdMarca", $idmarca, FORCE); $oProducto->set("IdContenedor", $idcontenedor, FORCE); $oProducto->set("IdProductoAlias0", $idalias0, FORCE); $oProducto->set("IdProductoAlias1", $idalias1, FORCE); // if ($oProducto->Alta()) { //Guardamos el id de la ultima alta para procesos posteriores // que quieran usarlo (encadenacion de acciones) setSesionDato("UltimaAltaProducto", $oProducto->getId()); //TODO // una vez creado el producto, lo vamos a stockar en los almacenes // con cantidad cero $alm = getSesionDato("Almacen"); error(__FILE__ . __LINE__, "Infor: Precio aqui es " . $oProducto->getPrecioVenta()); $alm->ApilaProductoTodos($oProducto); return $oProducto->getId(); } else { setSesionDato("UltimaAltaProducto", false); //por si acaso //setSesionDato("FetoProducto",$oProducto); if (!$mudo) { echo $oProducto->formEntrada($action, false); } //echo gas("aviso",_("No se ha podido registrar el nuevo producto")); return false; } }
function FormularioCompras($id) { global $action; //Creamos template $ot = getTemplate("FormCompras"); if (!$ot) { error(__FILE__ . __LINE__, "Info: template no encontrado"); return false; } $producto = new producto(); if ($producto->Load($id)) { $ot->fijar("NombreProducto", $producto->getNombre()); $ot->fijar("Referencia", $producto->getReferencia()); $ot->fijar("tTitulo", _("Petición de compra")); $ot->fijar("tCantidad", _("Cantidad:")); $ot->fijar("tEnviar", _("Enviar:")); $ot->fijar("tProveedorHabitual", _("Proveedor habitual:")); $ot->fijar("IdProducto", $producto->getId()); $ot->fijar("action", $action); echo $ot->Output(); } else { echo gas("Aviso", _("No se puede realizar la operación")); } }
function ListarProductos($idprov, $idmarca, $idcolor, $idtalla, $base, $idfamilia) { //Creamos template global $action, $txtMoDet, $tamPagina; $ot = getTemplate("ListadoProductos"); if (!$ot) { error(__FILE__ . __LINE__, "Info: template no encontrado"); return false; } $marcado = getSesionDato("CarritoProd"); //echo "ser: " . serialize($marcado). "<br>"; //$tamPagina = $ot->getPagina(); $oProducto = new producto(); $indice = getSesionDato("PaginadorListaProd"); $txtModelo = $txtMoDet[1]; $txtDetalle = $txtMoDet[2]; $hayProductos = $oProducto->ListadoFlexible($idprov, $idmarca, $idcolor, $idtalla, false, $indice, $base, false, $idfamilia, $tamPagina); $ot->fijar("comboProveedores", genComboProveedores($idprov)); $ot->fijar("comboMarcas", genComboMarcas($idmarca)); if (intval($idcolor) >= 0) { $ot->fijar("comboColores", genComboColores($idcolor)); } else { $ot->fijar("comboColores", genComboColores("ninguno")); } $ot->fijar("comboTalla", genComboTallas($idtalla)); $ot->fijar("tVerTallasColores", _("{$txtModelo}/{$txtDetalle}")); $ot->fijar("tBuscaCodigoBarras", _("CB")); $jsOut = ""; $ot->fijar("tTitulo", _("Lista de productos")); $ot->fijar("action", $action); $jsOut .= jsLabel("eliminar", _("Eliminar")); $jsOut .= jsLabel("modificar", _("Modificar")); $jsOut .= jsLabel("nuevatallacolor", _("{$txtModelo} / {$txtDetalle}")); $jsOut .= jsLabel("local", _("Local")); $jsOut .= jsLabel("nombre", _("Nombre")); $jsOut .= jsLabel("referencia", _("Referencia")); $jsOut .= jsLabel("unid", _("Unid")); $jsOut .= jsLabel("pv", _("PV")); $jsOut .= jsLabel("seleccionar", _("Seleccionar")); if (!$hayProductos) { echo gas("aviso", _("No hay productos disponibles")); } else { $num = 0; while ($oProducto->SiguienteProducto()) { $num++; $id = $oProducto->getId(); $nombre = $oProducto->getNombre(); $referencia = $oProducto->getReferencia(); $jsOut .= "cP({$id},'{$nombre}','{$referencia}');\n"; } $ot->paginador($indice, false, $num); $jsOut .= "cListProductos();"; } $ot->fijar("CLIST", $jsOut); echo $ot->Output(); }
function ListaFormaDeUnidades() { //Se usa esto aqui? //FormaListaCompraCantidades global $action, $tamPagina; $oProducto = new producto(); $ot = getTemplate("FormaListaCompraCantidades"); if (!$ot) { error(__FILE__ . __LINE__, "Info: template no encontrado"); return false; } $ot->resetSeries(array("IdProducto", "Referencia", "Nombre", "tBorrar", "tEditar", "tSeleccion", "vUnidades")); //$tamPagina = $ot->getPagina(); $detadoc = getSesionDato("detadoc"); $documento = getNombreDocumentoCompra($detadoc); $indice = getSesionDato("PaginadorSeleccionCompras2"); $carrito = getSesionDato("CarritoCompras"); $costescarrito = getSesionDato("CarroCostesCompra"); $DestinoAlmacen = getSesionDato("DestinoAlmacen"); $descuentos = getSesionDato("descuentos"); $Moneda = getSesionDato("Moneda"); $quitar = _("Quitar"); $DestinoAlmacen = !$DestinoAlmacen ? getParametro("AlmacenCentral") : $DestinoAlmacen; $salta = 0; $num = 0; $ot->fijar("tTitulo", _("Detalle de " . $documento . ": " . count($carrito) . " productos")); $ot->fijar("comboAlmacenes", genComboAlmacenes($DestinoAlmacen)); if ($carrito) { foreach ($carrito as $key => $value) { if ($num <= $tamPagina) { $num++; $cb = $oProducto->Load($key) ? $oProducto->getCB() : ""; $nombre = $oProducto->Load($key) ? $oProducto->getDescripcion() . " " . getIdMarca2Texto($oProducto->get("IdMarca")) . " " . $oProducto->getColorTexto() . " " . $oProducto->getTallaTexto() . " " . getNombreLaboratorio($oProducto->get("IdLabHab")) : ""; $vdescuento = isset($descuentos[$key][0]) ? $descuentos[$key][0] / $value : 0; $vcoste = round($costescarrito[$key] - $vdescuento, 2); $item = $num; //if($indice==10||$indice==20) $item--; $ot->fijarSerie("vItem", $item . "."); $ot->fijarSerie("vReferencia", $cb); $ot->fijarSerie("vNombre", $nombre); $ot->fijarSerie("tBorrar", $quitar); $ot->fijarSerie("vUnidades", $value . " " . $oProducto->getUnidadMedida()); $ot->fijarSerie("vPrecio", $vcoste); $ot->fijarSerie("IdProducto", $oProducto->getId()); } } } $tpfecha = 'Fecha Emisión : '; $tipodoc = $detadoc[0]; $aCredito = getSesionDato("aCredito") != 'true' ? 'hidden' : ''; $nrodoc = $detadoc[3]; $anrodoc = explode("-", $nrodoc); $sdoc = $anrodoc[0]; $ndoc = isset($anrodoc[1]) ? $anrodoc[1] : ''; $tnrodoc = $nrodoc ? 'Nro ' . $nrodoc : ''; $titulo = $documento . ' ' . $tnrodoc; $tpfecha = $detadoc[0] == 'O' ? 'Fecha Entrega : ' : $tpfecha; $idprov = $detadoc[1]; $nomprov = $detadoc[2]; $nrodoc = $detadoc[3]; $fecdoc = $detadoc[4]; $tipomoneda = $detadoc[5]; $checked = $tipomoneda == 1 ? $Moneda[1]['T'] : $Moneda[2]['T']; $tipocambio = $detadoc[6]; $fechacambio = $detadoc[7]; $fechapago = $detadoc[8]; $idsubsid = $detadoc[9]; $nombresubsid = $detadoc[10]; $tcp = getSesionDato("incImpuestoDet") == 'true' ? 'Precio/Unid.' : 'Costo/Unid.'; $ot->fijar("vTDoc", $tipodoc); $ot->fijar("vTipoDoc", $titulo); $ot->fijar("vIdProvHab", $idprov); $ot->fijar("vProveedorHab", $nomprov); $ot->fijar("vNDoc", $nrodoc); $ot->fijar("vCP", $tcp); $ot->fijar("vFechaDoc", $fecdoc); $ot->fijar("vFechaTxDoc", $tpfecha); $ot->fijar("vTipoMoneda", $tipomoneda); $ot->fijar("vTipoMoneda2", $checked); $ot->fijar("vTipoCambio", $tipocambio); $ot->fijar("vFechaCambio", $fechacambio); $ot->fijar("vFechaPago", $fechapago); $ot->fijar("vFletadorHab", $nombresubsid); $ot->fijar("aCredito", $aCredito); $ot->paginador($indice, false, $num); $ot->fijar("action", $action); $ot->terminaSerie(); echo $ot->Output(); }
function ListaFormaDeUnidades() { //FormaListaCompraCantidades global $action; $jsOut = ""; $idprodseriebuy = getSesionDato("idprodseriebuy"); $seriesbuy = getSesionDato("seriesbuy"); $Moneda = getSesionDato("Moneda"); setSesionDato("idprodseriecart", $idprodseriebuy); setSesionDato("seriescart", $seriesbuy); $oProducto = new producto(); $ot = getTemplate("PopupCarritoCompra"); if (!$ot) { error(__FILE__ . __LINE__, "Info: template no encontrado"); return false; } $ot->resetSeries(array("IdProducto", "Referencia", "Nombre", "tBorrar", "tEditar", "tSeleccion", "vUnidades", "vTalla", "vColor", "Serie")); $tamPagina = $ot->getPagina(); $indice = getSesionDato("PaginadorSeleccionCompras2"); $carrito = getSesionDato("CarritoCompras"); //echo q($carrito,"Carrito Cantidades"); $costescarrito = getSesionDato("CarroCostesCompra"); $descuentos = getSesionDato("descuentos"); $quitar = _("Quitar"); $ot->fijar("tTitulo", _("Carrito de compra")); $ot->fijar("comboAlmacenes", getSesionDato("ComboAlmacenes")); $ot->fijar("comboAlmacenes", genComboAlmacenes(getParametro("AlmacenCentral"))); $salta = 0; $num = 0; $detadoc = getSesionDato("detadoc"); $incImpuestoDet = getSesionDato("incImpuestoDet"); $incPercepcion = getSesionDato("incPercepcion"); $igv = getSesionDato("IGV"); $ipc = getSesionDato("IPC"); $TotalNeto = 0; $TotalBruto = 0; $ImporteFlete = $detadoc[13]; $ImportePercepcion = $detadoc[14]; $ImportePago = 0; $TotalDescuento = 0; $BrutoNeto = 0; $TotalImpuesto = 0; if ($carrito) { foreach ($carrito as $key => $value) { $TotalBruto = $TotalBruto + $costescarrito[$key] * $value; //$costescarrito[$key]; $dscto = isset($descuentos[$key][0]) ? $descuentos[$key][0] : 0; $TotalDescuento = $TotalDescuento + $dscto; $BrutoNeto = $BrutoNeto + $descuentos[$key][1]; } $TotalImpuesto = $BrutoNeto * $igv / 100; $TotalNeto = $incImpuestoDet == "true" ? $BrutoNeto : $BrutoNeto + $TotalImpuesto; $BrutoNeto = $incImpuestoDet == "true" ? $TotalNeto / ($igv / 100 + 1) : $BrutoNeto; $TotalBruto = $incImpuestoDet == "true" ? $TotalBruto / ($igv / 100 + 1) : $TotalBruto; $TotalImpuesto = $BrutoNeto * $igv / 100; $TotalImpuesto = round($TotalImpuesto * 100) / 100; $TotalDescuento = $TotalBruto - $BrutoNeto; $ImportePercepcion = $incPercepcion == "true" && $ImportePercepcion == 0 ? round($TotalNeto * $ipc / 100 * 100) / 100 : $ImportePercepcion; $ImportePago = $TotalNeto + $ImporteFlete + $ImportePercepcion; foreach ($carrito as $key => $value) { $salta++; if ($num <= $tamPagina and $salta >= $indice) { $num++; $oProducto->Load($key); $precioventa = $descuentos[$key][1] * $igv / 100; $precioventa = $descuentos[$key][1] + $precioventa; $vdescuento = isset($descuentos[$key][0]) ? $descuentos[$key][0] : 0; $pdescuento = isset($descuentos[$key][2]) ? $descuentos[$key][2] : 0; $item = $indice + $num; if ($indice == 10 || $indice == 20) { $item--; } $ot->fijarSerie("vItem", $item . "."); $ot->fijarSerie("vReferencia", $oProducto->getCB()); $ot->fijarSerie("vNombre", getDatosProductosExtra($key, "nombre")); $ot->fijarSerie("tBorrar", $quitar); $ot->fijarSerie("vUnidades", $value); $ot->fijarSerie("vPrecio", dosdecimales($costescarrito[$key])); $ot->fijarSerie("IdProducto", $oProducto->getId()); $ot->fijarSerie("Serie", $oProducto->getSerie()); $ot->fijarSerie("vDescuento", dosdecimales($vdescuento)); $ot->fijarSerie("PorcentajeDescuento", dosdecimales($pdescuento)); $ot->fijarSerie("vImporte", dosdecimales($descuentos[$key][1])); $ot->fijarSerie("vPrecioVenta", dosdecimales($precioventa)); $ot->fijarSerie("vVentaMenudeo", $oProducto->getVentaMenudeo()); $ot->fijarSerie("vUnidadesPorContenedor", $oProducto->getUnidadesPorContenedor()); $ot->fijarSerie("vUnidadMedida", $oProducto->getUnidadMedida()); $unimedida = $oProducto->getUnidadMedida(); $menudeo = $oProducto->getVentaMenudeo(); $lt = $oProducto->getLote(); $fv = $oProducto->getFechaVencimiento(); $ns = $oProducto->getSerie(); $contenedor = $oProducto->getContenedor(); $vbtn = $menudeo ? true : false; $vbtn = $lt ? true : $vbtn; $vbtn = $fv ? true : $vbtn; $contunid = $menudeo ? intval($value / $oProducto->getUnidadesPorContenedor()) : ""; $unid = $menudeo ? $value % $oProducto->getUnidadesPorContenedor() : ""; $cadena = $contunid . " " . $contenedor . " + " . $unid . " " . $unimedida; $cadena = $menudeo ? $cadena : $contenedor; $svalbtn = validaxdtCarritoProducto($key) ? "+" : "?"; $rbtnns = $ns ? "readonly" : ""; $rbtnns = $detadoc[0] == 'O' ? "" : $rbtnns; $sbtnns = $ns ? "button" : "hidden"; $sbtn = $vbtn ? "button" : "hidden"; $svalbtn = $detadoc[0] == 'O' ? "+" : $svalbtn; $sbtnns = $detadoc[0] == 'O' ? "hidden" : $sbtnns; $sbtn = $detadoc[0] == 'O' ? "hidden" : $sbtn; $sbtn = $menudeo ? "button" : $sbtn; $sbtncsto = $menudeo ? "button" : "hidden"; $ot->fijarSerie("vUnidMedida", $unimedida); $ot->fijarSerie("vTotalContenedor", $cadena); $ot->fijarSerie("vButton", $sbtn); $ot->fijarSerie("vButtonCosto", $sbtncsto); $ot->fijarSerie("vValButton", $svalbtn); $ot->fijarSerie("vReadOnly", $rbtnns); $ot->fijarSerie("vBotonSerie", $sbtnns); } } } if (!$salta) { $ot->fijar("aviso", gas("aviso", _("Carrito vacío"))); $ot->eliminaSeccion("haydatos"); } else { $ot->fijar("aviso"); $ot->confirmaSeccion("haydatos"); } $tpfecha = 'Fecha Emisión :'; $tipodoc = $detadoc[0]; $nrodoc = $detadoc[3]; $anrodoc = explode("-", $nrodoc); $sdoc = $anrodoc[0]; $ndoc = isset($anrodoc[1]) ? $anrodoc[1] : false; $tnrodoc = $nrodoc ? 'Nro. ' . $nrodoc : ''; $titulo = $tipodoc == 'F' ? 'Factura ' . $tnrodoc : ''; $titulo = $tipodoc == 'O' ? 'Pedido ' . $tnrodoc : $titulo; $titulo = $tipodoc == 'R' ? 'Boleta ' . $tnrodoc : $titulo; $titulo = $tipodoc == 'G' ? 'Albarán ' . $tnrodoc : $titulo; $titulo = $tipodoc == 'SD' ? 'Ticket' . $tnrodoc : $titulo; $tpfecha = $tipodoc == 'O' ? 'Fecha Entrega : ' : $tpfecha; $idprov = $detadoc[1]; $nomprov = $detadoc[2]; $fecdoc = $detadoc[4]; $tipomoneda = $detadoc[5]; $checkedTS = $tipomoneda == 1 ? 'CHECKED' : ''; $checkedTD = $tipomoneda == 2 ? 'CHECKED' : ''; $tipocambio = $detadoc[6]; $fechacambio = $detadoc[7]; $fechapago = $detadoc[8]; $idsubsid = $detadoc[9]; $nomsubsid = $detadoc[10]; $incluyeigv = getSesionDato("incImpuestoDet") == 'true' ? true : false; $incluyeipc = getSesionDato("incPercepcion") == 'true' ? true : false; $checkipc = $incluyeipc ? 'CHECKED' : ''; $checkigv = $incluyeigv ? 'CHECKED' : ''; $tpv = 'PC'; $xipc = $incluyeipc ? '' : 'display:none'; $tvv = $incluyeigv ? $tpv : 'VC'; $tcp = $incluyeigv ? 'Precio/Unid.' : 'Costo/Unid.'; $pv = $incluyeigv ? 'hidden' : 'text'; $tdpv = $incluyeigv ? '1' : '0'; $colheadcart = $incluyeigv ? '16' : '17'; $checkcredt = getSesionDato("aCredito") == 'true' ? 'CHECKED' : ''; $ot->fijar("vTDoc", $tipodoc); $ot->fijar("vTxFecha", $tpfecha); $ot->fijar("vCheckIGV", $checkigv); $ot->fijar("vCheckPercepcion", $checkipc); $ot->fijar("vxPercepcion", $xipc); $ot->fijar("vMoneda1", $Moneda[1]['T']); $ot->fijar("vMoneda2", $Moneda[2]['T']); $ot->fijar("vSimboloMoneda1", $Moneda[1]['S']); $ot->fijar("vSimboloMoneda2", $Moneda[2]['S']); $ot->fijar("vCheckCredt", $checkcredt); $ot->fijar("vTipoDoc", $titulo); $ot->fijar("vIdProvHab", $idprov); $ot->fijar("vIdSubsiHab", $idsubsid); $ot->fijar("vProveedorHab", $nomprov); $ot->fijar("vSubsiHab", $nomsubsid); $ot->fijar("vSDoc", $sdoc); $ot->fijar("vNDoc", $ndoc); $ot->fijar("vFechaDoc", $fecdoc); $ot->fijar("vFechaPago", $fechapago); $ot->fijar("vTipoMoneda", $tipomoneda); $ot->fijar("vCheckedTS", $checkedTS); $ot->fijar("vCheckedTD", $checkedTD); $ot->fijar("vTipoCambio", $tipocambio); $ot->fijar("vFechaCambio", $fechacambio); $ot->fijar("vIGV", $igv); $ot->fijar("vInputPV", $pv); $ot->fijar("vVV", $tvv); $ot->fijar("vPV", $tpv); $ot->fijar("vCP", $tcp); $ot->fijar("vTDPV", $tdpv); $ot->fijar("vColHeadCart", $colheadcart); $totallst = count($carrito); $ot->fijar("vTotalLst", $totallst); $ot->fijar("vTotalNeto", dosdecimales($TotalNeto)); $ot->fijar("vTotalDescuento", dosdecimales($TotalDescuento)); $ot->fijar("vTotalImpuesto", dosdecimales($TotalImpuesto)); $ot->fijar("vTotalBruto", dosdecimales($TotalBruto)); $ot->fijar("vBrutoNeto", dosdecimales($BrutoNeto)); $ot->fijar("vImporteFlete", dosdecimales($ImporteFlete)); $ot->fijar("vImportePercepcion", dosdecimales($ImportePercepcion)); $ot->fijar("vImportePago", dosdecimales($ImportePago)); $jsOut .= jsPaginador($indice, $ot->getPagina(), $num); $ot->fijar("CLIST", $jsOut); $ot->paginador($indice, false, $num); $ot->fijar("action", $action); $ot->terminaSerie(); echo $ot->Output(); }