Subversion-Projekte lars-tiefland.content-management

Revision

Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

<?php

    /**
     * @package   Content-management
     * @author    Webagentur Niewerth <tiefland@weban.de>
     * @copyright 2011 Webagentur Niewerth
     * @license   propietary http://www.weban.de
     * @version   $Rev: 3931 $
     * @filesource
     * 
     */

    /**
     * 
     * @package   Content-management
     * @author    Webagentur Niewerth <tiefland@weban.de>
     * @copyright 2011 Webagentur Niewerth
     */

    // SVN: $Id: lieferantenbestellungen.php 3931 2011-09-16 08:17:57Z tiefland $

    require_once "../toolbox/common.php";
    require_once
        "../Warenwirtschaft/includes/bestellungen/system/artikelDatabase.php";
    require_once "../Warenwirtschaft/includes/statistik/system.php";
    require_once "module/weban/weban_utils.class.php";

    $mode = Weban_Utils::clean_global_input( "mode" );
    $order_id = Weban_Utils::clean_global_input( "order", "post", "int" );
    $item_id = Weban_Utils::clean_global_input( "item", "post", "int" );
    $lager_id = Weban_Utils::clean_global_input( "lager", "post", "int" );
    switch ( $mode )
    {
        case "del_prep";
            $sql = "SELECT
                    shops_id
                FROM
                    Bestellung
                WHERE
                    id=$order_id
            ";
            $res = mysql_query( $sql );
            $row = mysql_fetch_assoc( $res );
            $shop_id = $row["shops_id"];
            $shop_db = shopDatabase( $shop_id );
            $sql = "SELECT
                    a.kurzbezeichnung,
                    ab.bezeichnung
                FROM
                    artikel_to_Bestellung ab
                JOIN
                    " . $shop_db . "artikel a
                ON
                    a.ID=ab.artikel
                WHERE
                    ab.artikel=$item_id
                AND
                    ab.bestellung=$order_id
            ";
            $res = mysql_query( $sql );
            $artikel = mysql_fetch_assoc( $res );
            $sql = "SELECT
                    name
                FROM
                    " . $shop_db . "lieferanten_lager
                WHERE
                    id=$lager_id 
            ";
            $res = mysql_query( $sql );
            $lager = mysql_fetch_assoc( $res );
            $artikel["lager"] = $lager["name"];
            $GLOBALS["ui"]->assign( "order_id", $order_id );
            $GLOBALS["ui"]->assign( "lager_id", $lager_id );
            $GLOBALS["ui"]->assign( "item_id", $item_id );
            $GLOBALS["ui"]->assign( "artikel", $artikel );
            $GLOBALS["ui"]->display( "del_order_dialog.tpl" );
            break;
        case "delete":
            $sql = "SELECT
                    shops_id
                FROM
                    Bestellung
                WHERE
                    id=$order_id
            ";
            $res = mysql_query( $sql );
            $row = mysql_fetch_assoc( $res );
            $shop_id = $row["shops_id"];
            $shop_db = shopDatabase( $shop_id );
            $sql = "
                DELETE FROM
                    " . $shop_db . "artikel_to_lieferantenbestellung
                WHERE
                    order_id=$order_id
                AND
                    artikel_id=$item_id   
                AND
                    lager_id=$lager_id           
            ";
            $res = mysql_query( $sql );
            if ( $res )
            {
                echo "Datensatz erfolgreich gelöscht";
            }
            else
            {
                echo "Es ist ein Fehler aufgetreten\n" . mysql_error() . "\n" .
                    $sql;
            }
            break;
        default:
            $shops = getShops();
            $filter_shops = array();
            $lieferanten["-1_-1"] = "--- alle ---";
            foreach ( $shops as $id => $shop )
            {
                $filter_shops[] = $shop["ID"];
                $shop_lieferanten = getShopLieferanten( $shop["ID"] );
                if ( is_array( $shop_lieferanten ) )
                {
                    //$lieferanten = array_merge( $lieferanten, $shop_lieferanten[$shop["Name"]] );
                    $lieferanten[$shop["Name"]] = $shop_lieferanten;
                }
            }
            if ( $_POST["filter"]["lieferant"] != "-1_-1" )
            {
                $_SESSION["lieferantenbestellungen"]["filter"]["lieferant"] =
                    $_POST["filter"]["lieferant"];
            }
            else
            {
                $_SESSION["lieferantenbestellungen"]["filter"]["lieferant"] =
                    "-1_-1";
            }
            list( $shop_id, $lieferanten_id ) = explode( "_", $_SESSION["lieferantenbestellungen"]["filter"]["lieferant"] );
            if ( $shop_id != -1 )
            {
                $filter_shops = array( $shop_id );
            }
            if ( $lieferanten_id != -1 )
            {
                $sql_filter = "AND ll.lieferanten_id=$lieferanten_id";
            }
            foreach ( $filter_shops as $shop )
            {
                $db = shopDatabase( $shop );
                if ( !$db )
                {
                    continue;
                }
                $sql = "SELECT
                        al.id,
                        ll.lieferanten_id,
                        al.artikel_id,
                        al.order_id,
                        al.menge,
                        al.lager_id,
                        al.text,
                        al.bestellzeit,
                        a.kurzbezeichnung,
                        ab.bezeichnung,
                        ll.name as lager_name
                    FROM
                        artikel_to_lieferantenbestellung al
                    JOIN
                        " . $db . "artikel a
                    ON
                        al.artikel_id=a.id
                    JOIN
                        artikel_to_Bestellung ab
                    ON
                        ab.bestellung=al.order_id
                    JOIN
                        " . $db . "lieferanten_lager ll
                    ON
                        ll.id=al.lager_id
                    JOIN
                        Bestellung b
                    ON
                        b.id=al.order_id
                    WHERE
                        b.shops_id=$shop
                    AND
                        ab.artikel=al.artikel_id
                    $sql_filter                
                ";
                $res = mysql_query( $sql );
                while ( $row = mysql_fetch_assoc( $res ) )
                {
                    if ( !$row["bestellzeit"] )
                    {
                        $row["bestellzeit_text"] = "offen";
                    }
                    //var_dump( $row );
                    $dok = getDocument( $row["id"] );
                    $row["document"]["file"] = $dok["document"];
                    $bestellungen[] = $row;
                }
            }
            $GLOBALS["ui"]->assign( "bestellungen", $bestellungen );
            $GLOBALS["ui"]->assign( "lieferanten", $lieferanten );
            $GLOBALS["ui"]->assign( "filter", $_SESSION["lieferantenbestellungen"]["filter"] );
            $GLOBALS["ui"]->assign( "file", "lieferantenbestellungen.tpl" );
            $GLOBALS["ui"]->display( "page.tpl" );
            break;
    }

    function getDocument( $bestell_id )
    {
        $sql = "SELECT
                *
            FROM
                dokumente
            WHERE
                table_foreign='artikel_to_lieferantenbestellung'
            AND
                data_foreign=" . $bestell_id . "
        ";
        $res = mysql_query( $sql );
        echo mysql_error();
        $row = mysql_fetch_assoc( $res );
        return $row;
    }
    function getShopLieferanten( $shop_id )
    {
        $ret = array();
        $shop_db = shopDatabase( $shop_id );
        if ( !$shop_db )
        {
            return false;
        }
        $sql = "SELECT
                l.id,
                l.name,
                s.name as shop_name
            FROM
                " . $shop_db . "lieferanten l
            JOIN
                shops s
            ON
                s.id=$shop_id
            ORDER BY
                l.rang,
                l.name
        ";
        $res = mysql_query( $sql );
        if ( mysql_errno() )
        {
            echo mysql_error();
            return false;
        } elseif ( mysql_num_rows( $res ) )
        {
            $ret[$shop_id . "_-1"] = "--- alle ---";
            while ( $row = mysql_fetch_assoc( $res ) )
            {
                $ret[$shop_id . "_" . $row["id"]] = $row["shop_name"] .
                    " - " . $row["name"];
            }
            return $ret;
        }
        else
        {
            return false;
        }
    }
?>