Example #1
0
function actualizarPreciosVentaAlmacenxSubFamilia($idsubfam, $md, $mc, $tipocosto, $descuento)
{
    $subfam = new familia();
    $subfam->LoadSub($idsubfam);
    $idsubfamilia = $subfam->get("IdSubFamilia");
    $idfamilia = $subfam->get("IdFamilia");
    $IdLocal = getSesionDato("IdTienda");
    $mu_gral = getSesionDato("MargenUtilidad");
    $dto_gral = getSesionDato("DescuentoTienda");
    $cop_ipto = getSesionDato("COPImpuesto");
    $sql = "SELECT IdProducto,IdSubFamilia,Costo\n          FROM ges_productos \n          WHERE  ges_productos.IdSubFamilia = '{$idsubfamilia}' \n          AND    ges_productos.IdFamilia = '{$idfamilia}' \n          AND    ges_productos.Eliminado = 0 \n          AND    ges_productos.Servicio = 0 ";
    $res = query($sql);
    while ($row = Row($res)) {
        $UC = $row["Costo"];
        // Ultimo Costo
        $IdProducto = $row["IdProducto"];
        $sql1 = "SELECT CostoUnitario, PrecioVenta, PrecioVentaCorporativo,\n              Impuesto,CostoOperativo \n              FROM ges_almacenes \n              WHERE  ges_almacenes.IdProducto = '{$IdProducto}' \n              AND    ges_almacenes.IdLocal = '{$IdLocal}'";
        $row1 = queryrow($sql1);
        $CP = $row1["CostoUnitario"];
        $PVD = $row1["PrecioVenta"];
        $PVC = $row1["PrecioVentaCorporativo"];
        $COP = $cop_ipto == 1 ? 0 : $row1["CostoOperativo"];
        $Impuesto = $row1["Impuesto"];
        // Calculado nuevos precios
        $descuento = $descuento == 0 ? $dto_gral : $descuento;
        $DSTO = $descuento / 100;
        $Costo = $tipocosto == 'CP' ? $CP : $UC;
        $md = $md == 0 ? $mu_gral : $md;
        $MUD = ($Costo + $COP) * ($md / 100);
        $PV1 = $Costo + $COP + $MUD;
        if ($md != 0) {
            $PVD = $PV1 + $PV1 * ($Impuesto / 100);
            $PVD = $cop_ipto == 1 ? $PV1 + $COP + ($PV1 + $COP) * ($Impuesto / 100) : $PVD;
            $PVD = round($PVD, 1);
            $PVD = FormatPreciosTPV($PVD);
            $PVDD = round($PVD - $MUD * $DSTO, 1);
            $PVDD = FormatPreciosTPV($PVDD);
            actualizarPreciosVentaxSubFamilia($IdProducto, $PVD, $PVDD, $IdLocal, 'VD');
        }
        $mc = $mc == 0 ? $mu_gral : $mc;
        $MUC = ($Costo + $COP) * ($mc / 100);
        $PV2 = $Costo + $COP + $MUC;
        if ($mc != 0) {
            $PVC = $PV2 + $PV2 * ($Impuesto / 100);
            $PVC = $cop_ipto == 1 ? $PV2 + $COP + ($PV2 + $COP) * ($Impuesto / 100) : $PVC;
            $PVC = round($PVC, 1);
            $PVC = FormatPreciosTPV($PVC);
            $PVCD = round($PVC - $MUC * $DSTO, 1);
            $PVCD = FormatPreciosTPV($PVCD);
            actualizarPreciosVentaxSubFamilia($IdProducto, $PVC, $PVCD, $IdLocal, 'VC');
        }
    }
}
Example #2
0
function BorrarSubFamilia($id)
{
    $oFamilia = new familia();
    if ($oFamilia->LoadSub($id)) {
        $nombre = $oFamilia->get("SubFamilia");
        //echo gas("Aviso",_("Sub familia $nombre borrado"));
        $oFamilia->MarcarEliminado();
        return true;
    } else {
        //	echo gas("Aviso",_("No se ha podido borrar el familia"));
        return false;
    }
}