public function getAlleStrukturen() { $sql = $this->query_getAlleStrukturen; $result = $this->dbm->query($sql); $ListOfStrukturen = array(); $ListOfTeile = array(); $teileMapper = TeileMapperImpl::make(); //mysql_fetch_array($result,MYSQL_ASSOC) while ($row = mysql_fetch_assoc($result)) { $oberteil = $teileMapper->getTeileById($row['OTNr']); $unterteil = $teileMapper->getTeileById($row['UTNr']); $oberteil = Stueckliste::createTeil($oberteil->getTeileNr(), $oberteil->getBezeichnung(), $oberteil->getPreis()); $unterteil = Stueckliste::createTeil($unterteil->getTeileNr(), $unterteil->getBezeichnung(), $unterteil->getPreis()); array_push($ListOfTeile, $oberteil, $unterteil); $struktur = Stueckliste::createStruktur($oberteil, $unterteil, $row['menge']); array_push($ListOfStrukturen, $struktur); } Stueckliste::$listeVonStrukturen = $ListOfStrukturen; Stueckliste::$listeVonTeilen = $ListOfTeile; }
public static function stueckliste_test() { $p1 = Stueckliste::createTeil(1, "Produkt1", null); $p2 = Stueckliste::createTeil(2, "Produkt2", null); $b1 = Stueckliste::createTeil(3, "Baugruppe1", null); $b2 = Stueckliste::createTeil(4, "Baugruppe2", null); $b3 = Stueckliste::createTeil(5, "Baugruppe3", null); $b4 = Stueckliste::createTeil(6, "Baugruppe4", null); $b5 = Stueckliste::createTeil(7, "Baugruppe5", null); $b6 = Stueckliste::createTeil(8, "Baugruppe6", null); $a = Stueckliste::createTeil(9, "TeilA", 300); $b = Stueckliste::createTeil(10, "TeilB", 50); $c = Stueckliste::createTeil(11, "TeilC", 2); $d = Stueckliste::createTeil(12, "TeilD", 1500); $e = Stueckliste::createTeil(13, "TeilE", 800); $f = Stueckliste::createTeil(14, "TeilF", 20); $g = Stueckliste::createTeil(15, "TeilG", 130); $listeVonTeilen = array(); array_push($listeVonTeilen, $p1, $p2, $b1, $b2, $b3, $b4, $b5, $b6, $a, $b, $c, $d, $e, $f, $g); $listeVonStrukturen = array(); array_push($listeVonStrukturen, Stueckliste::createStruktur($p1, $b1, 2), Stueckliste::createStruktur($p1, $b2, 1), Stueckliste::createStruktur($p2, $e, 1), Stueckliste::createStruktur($p2, $b, 10), Stueckliste::createStruktur($p2, $b4, 3), Stueckliste::createStruktur($p2, $g, 100), Stueckliste::createStruktur($b1, $a, 1), Stueckliste::createStruktur($b1, $f, 20), Stueckliste::createStruktur($b1, $c, 50), Stueckliste::createStruktur($b2, $f, 10), Stueckliste::createStruktur($b2, $b3, 2), Stueckliste::createStruktur($b4, $c, 25), Stueckliste::createStruktur($b4, $b5, 4), Stueckliste::createStruktur($b3, $d, 1), Stueckliste::createStruktur($b3, $e, 1), Stueckliste::createStruktur($b5, $b6, 5), Stueckliste::createStruktur($b5, $a, 1), Stueckliste::createStruktur($b6, $c, 20), Stueckliste::createStruktur($b6, $f, 2)); Stueckliste::bestimmeOberUndUnterteile($listeVonTeilen, $listeVonStrukturen); self::$listeVonStrukturen = $listeVonStrukturen; self::$listeVonTeilen = $listeVonTeilen; // echo("<br>"); // self::printTeil($p1); // self::printTeil($p2); // var_dump($p1->getIstOberteilInStruktur()); }
public static function teilHinzufuegen(Teil $teil, $menge, $fertigstellungsdatum) { Stueckliste::mengenErmitteln($teil, $menge); // teil selbst eintragen self::bedarfHinzufuegen(self::createBedarf(0, $teil->id(), $fertigstellungsdatum, $menge)); self::auftragHinzufuegen(self::createAuftrag(0, $teil->id(), $fertigstellungsdatum, $menge)); self::bedarfsdeckungHinzufuegen(self::createBedarfsdeckung(0, $teil->id(), $fertigstellungsdatum, $fertigstellungsdatum, $menge)); // unterteile eintragen self::_createJobs($teil, $fertigstellungsdatum); }
public function showPage(Request $request) { // creating MainPage and modifing header information $page = MainPage::create(); $page->getLayoutElem("header")->addHeaderElem('<link rel="stylesheet" type="text/css" href="' . Registry::$settings['config']['CSS_PATH'] . 'adminpanel_view_layout.css">'); $page->getLayoutElem("header")->addHeaderElem(' <script type="text/javascript"> var old_color = "white"; function highlight_row($divElem){ if(old_color == "white") old_color = $divElem.style.backgroundColor; $divElem.style.backgroundColor = "#FFF2D5"; } function unhighlight_row($divElem){ $divElem.style.backgroundColor = old_color; } function stueckListeVonAnfordern(){ var produkt = document.getElementById("stueckliste_produkt").value; window.location.href = "adminpanel?stuecklisteVon="+produkt; } function teil_hinzufuegen(){ var bezeichnung,preis,kategorie,wirdAngeboten,bild,beschreibung; bezeichnung = document.getElementById("teil_bezeichnung").value; preis = document.getElementById("teil_preis").value; kategorie = document.getElementById("teil_typ").value; wirdAngeboten = document.getElementById("teil_angeboten").value; bild = document.getElementById("teil_bild").value; beschreibung = document.getElementById("teil_beschreibung").value; window.location.href = "adminpanel?teil_bezeichnung="+bezeichnung+ "&teil_preis="+preis+ "&teil_typ="+kategorie+ "&teil_angeboten="+wirdAngeboten+ "&teil_bild="+bild+ "&teil_beschreibung="+beschreibung; } /* * <input type="text" id="struktur_otnr" value="OTNR"> <input type="text" id="struktur_utnr" value="UTNR"> <input type="text" id="struktur_menge" value="Menge"> <button onclick="javascript:struktur_hinzufuegen()">Eintragen</button>*/ function struktur_hinzufuegen(){ var otnr,utnr,menge; otnr = document.getElementById("struktur_otnr").value; utnr = document.getElementById("struktur_utnr").value; menge = document.getElementById("struktur_menge").value; window.location.href = "adminpanel?struktur_otnr="+otnr+ "&struktur_utnr="+utnr+ "&struktur_menge="+menge; } function berechnen(){ var glaettungsfaktor = parseFloat(document.getElementById("glaettungsfaktor").value); var monat = document.getElementById("monat").value; var jahr = document.getElementById("jahr").value; var teilName = document.getElementById("teilname").value; window.location.href = "adminpanel?monat="+monat+ "&jahr="+jahr+ "&teilname="+teilName+ "&faktor="+glaettungsfaktor; } function kunde_hinzufuegen(){ // <input type="text" id="kunde_Name" value="Name"> // <input type="text" id="kunde_Vorname" value="Vorname"> // <input type="text" id="kunde_eMail" value="eMail"> var name,vorname,email; name = document.getElementById("kunde_Name").value; vorname = document.getElementById("kunde_Vorname").value; email = document.getElementById("kunde_eMail").value; window.location.href = "adminpanel?kunde_Name="+name+ "&kunde_Vorname="+vorname+ "&kunde_eMail="+email; } </script>'); // deciding which content to build // this $request->get doesnt mean get, its the PHP $_GET which is wraped in Request class ErrorReporter::logVarExport(__CLASS__ . "::showPage(request) => request get export", $request->get); ErrorReporter::logVarExport(__CLASS__ . "::showPage(request) => request post export", $request->post); $stuecklisteProdukt = $request->get["stuecklisteVon"]; $teil_bezeichnung = $request->get["teil_bezeichnung"]; $teil_preis = $request->get["teil_preis"]; $teil_typ = $request->get["teil_typ"]; $teil_angeboten = $request->get["teil_angeboten"]; $teil_bild = $request->get["teil_bild"]; $teil_beschreibung = $request->get["teil_beschreibung"]; $struktur_otnr = $request->get["struktur_otnr"]; $struktur_utnr = $request->get["struktur_utnr"]; $struktur_menge = $request->get["struktur_menge"]; $kunde_name = $request->get["kunde_Name"]; $kunde_vorname = $request->get["kunde_Vorname"]; $kunde_email = $request->get["kunde_eMail"]; if (isset($teil_bezeichnung) && isset($teil_preis) && isset($teil_typ) && isset($teil_angeboten) && isset($teil_beschreibung)) { TeileMapperImpl::make()->teilErstellen($teil_bezeichnung, $teil_preis, $teil_typ, $teil_angeboten, "application/view/images/" . $teil_bild, $teil_beschreibung); } if (isset($struktur_otnr) && isset($struktur_utnr) && isset($struktur_menge)) { StrukturMapperImpl::make()->strukturAnlegen($struktur_otnr, $struktur_utnr, $struktur_menge); } if (isset($kunde_name) && isset($kunde_vorname) && isset($kunde_email)) { KundeMapperImpl::make()->kundeHinzufuegen($kunde_name, $kunde_vorname, $kunde_email); } //testdaten initialisieren if (isset($stuecklisteProdukt)) { StrukturMapperImpl::make()->getAlleStrukturen(); //listeVonTeilen und ListeVonStrukturen wird in getAlleStrukuren erzeugt Stueckliste::bestimmeOberUndUnterteile(Stueckliste::$listeVonTeilen, Stueckliste::$listeVonStrukturen); // Stueckliste::stueckliste_test(); $stuecklisteProdukt = Stueckliste::getProdukt($stuecklisteProdukt); //AuftragsVerfolgung::teilHinzufuegen($stuecklisteProdukt,200,AuftragsVerfolgung::getTimestamp(5,12,2012)); } // $abc_analyse_result = ABC_Analyse::abc_analyse_test(); $abc_analyse_result = ABC_Analyse::analyse(ABC_Analyse::convertToABC_ADT(TeileMapperImpl::make()->getAlleTeile())); //var_dump(BestellungMapperImpl::make()->getBestellungenByKundenID(1)); $bedarfs_daten = AuftragsVerfolgung::getAlleBedarfe(); $bedarfsableitungs_daten = AuftragsVerfolgung::getAlleBedarfsAbleitungen(); $faktor = $request->get["faktor"]; $monat = $request->get["monat"]; $jahr = $request->get["jahr"]; $teilname = $request->get["teilname"]; if (isset($teilname) and isset($jahr) and isset($monat) and isset($faktor)) { $bedarfsanalyse_ergebnis = PrimaerbedarfsAnalyse::calcZukuenftigenBedarf($teilname, $monat, $jahr, $faktor); } else { $bedarfsanalyse_ergebnis = " "; $teilname = "Aircar"; $monat = "12"; $jahr = "2012"; $faktor = "0.20"; } // PrimaerbedarfsAnalyse::primaerbedarfstest(); // fetch view and apply data to view $page->setContentView(AdminPanel_View::create()); $page->getLayoutElem("contentview")->applyData(array("stueckliste_produkt" => $stuecklisteProdukt, "abc_analyse_array" => $abc_analyse_result, "bedarfs_daten" => $bedarfs_daten, "bedarfsableitungs_daten" => $bedarfsableitungs_daten, "bedarfsanalyse_ergebnis" => $bedarfsanalyse_ergebnis, "bedarfsanalyse_teilname" => $teilname, "bedarfsanalyse_monat" => $monat, "bedarfsanalyse_jahr" => $jahr, "bedarfsanalyse_faktor" => $faktor)); // show view $page->showPage($page->layoutElementMap); }
public function showPage(Request $request) { // creating MainPage and modifing header information $page = MainPage::create(); $page->getLayoutElem("header")->addHeaderElem('<link rel="stylesheet" type="text/css" href="' . Registry::$settings['config']['CSS_PATH'] . 'basketoverview_view_layout.css">'); $page->getLayoutElem("header")->addHeaderElem('<script type="text/javascript"> function removeItems(itemID,oldCount){ var count_field = document.getElementById("product_"+itemID+"_count"); var currentCount = count_field.value; if(currentCount >= 0 && currentCount < oldCount){ if(confirm("Sie sind dabei "+(oldCount-currentCount)+" Artikel von diesem Artikel entfernen")){ window.location.href = "basketoverview?itemID="+itemID+"&count="+currentCount; }else{ } }else{ if(currentCount == oldCount){ alert("Zum entfernen die neue Menge die Sie behalten wollen eintragen.") } count_field.value=oldCount; } } function bestellen(){ var day = document.getElementById("day").value; var month = document.getElementById("month").value; var year = document.getElementById("year").value; var gesamtpreis = document.getElementById("gesamtpreis").innerHTML; if(confirm("Sie sind dabei ihre Bestellung im Wert von "+gesamtpreis+" abzuschicken, bestätigen Sie dies bitte!")){ window.location.href = "basketoverview?bestellen=1&day="+day+"&month="+month+"&year="+year; } } </script>'); // deciding which content to build // this $request->get doesnt mean get, its the PHP $_GET which is wraped in Request class ErrorReporter::logVarExport(__CLASS__ . "::showPage(request) => request get export", $request->get); ErrorReporter::logVarExport(__CLASS__ . "::showPage(request) => request post export", $request->post); $basketItem = $request->get["itemID"]; $count = $request->get["count"]; if (isset($basketItem) && isset($count)) { $basketItem = mysql_real_escape_string($basketItem); $count = mysql_real_escape_string($count); if ($_SESSION["basket"][$basketItem] > $count) { if (!($count <= 0)) { $_SESSION["basket"][$basketItem] = $count; } else { $_SESSION["basket"] = array_diff_key($_SESSION["basket"], array($basketItem => $count)); } } } $products = array(); if (isset($_SESSION["basket"])) { foreach ($_SESSION["basket"] as $productID => $count) { array_push($products, TeileMapperImpl::make()->getTeileById($productID)); } } $month = $request->get["month"]; $day = $request->get["day"]; $year = $request->get["year"]; if (isset($request->get["bestellen"]) and isset($month) and isset($day) and isset($year)) { StrukturMapperImpl::make()->getAlleStrukturen(); //listeVonTeilen und ListeVonStrukturen wird in getAlleStrukuren erzeugt Stueckliste::bestimmeOberUndUnterteile(Stueckliste::$listeVonTeilen, Stueckliste::$listeVonStrukturen); // Stueckliste::stueckliste_test(); $lieferdatum = AuftragsVerfolgung::getTimestamp($day, $month, $year); foreach ($products as $product) { $teil = Stueckliste::getProdukt($product->getBezeichnung()); AuftragsVerfolgung::teilHinzufuegen($teil, $_SESSION["basket"][$teil->id()], $lieferdatum); } $_SESSION["basket"] = array(); $products = array(); } // fetch view and apply data to view $page->setContentView(BasketOverview_View::create()); $page->getLayoutElem("contentview")->applyData(array("basket" => $_SESSION['basket'], "products" => $products)); // show view $page->showPage($page->layoutElementMap); }
public function show() { ?> <div id="adminpanel"> <div id="stueckliste"> <div style='float: left;'> Erstelle Stueckliste von <input id='stueckliste_produkt' type='text' value='<?php if (isset($this->dataMap["stueckliste_produkt"])) { echo $this->dataMap["stueckliste_produkt"]->name(); } else { echo "Produkt1"; } ?> '> </div> <div style='float:left;cursor: pointer;' onclick='javascript:stueckListeVonAnfordern();'> Erstellen </div> <?php if (!empty($this->dataMap["stueckliste_produkt"])) { Stueckliste::printTeil($this->dataMap["stueckliste_produkt"]); } ?> </div> <div id="abc_analyse"> ABC Analyse <?php echo "<div class='abc_row'><div class='abc_col'> TeilID </div> <div class='abc_col'> TeilBezeichnung </div><div class='abc_col'> Preis </div><div class='abc_col'> Kategorie</div></div>"; foreach ($this->dataMap["abc_analyse_array"] as $abc_adt) { echo "<div class='abc_row' onmouseout='javascript:unhighlight_row(this);' onmouseover='javascript:highlight_row(this);'>\r\n <div class='abc_col'>" . $abc_adt->productID() . "</div>" . "<div class='abc_col' style='cursor:pointer;' onclick=\"location.href='products?search=" . $abc_adt->productName() . "'\">" . $abc_adt->productName() . "</div>" . "<div class='abc_col'>" . number_format($abc_adt->wholePrice(), 2, ',', '.') . "</div>" . "<div class='abc_col'>" . $abc_adt->categorie() . "</div>\r\n </div>"; } // echo("Name: ".$abc_adt->productName() ." :: Kategorie: ".$abc_adt->categorie()." :: Preis: ".number_format($abc_adt->wholePrice(),2,',','.')."<br>"); ?> </div> <div id="bedarfs_analyse"> <div> <div> Primaerbedarfs Analyse </div> <div>TeilName<input id="teilname" value="<?php echo $this->dataMap["bedarfsanalyse_teilname"]; ?> "></div> <div>Letzter Monat<input id="monat" value="<?php echo $this->dataMap["bedarfsanalyse_monat"]; ?> "></div> <div>Jahr<input id="jahr" value="<?php echo $this->dataMap["bedarfsanalyse_jahr"]; ?> "></div> <div>Glaettungfaktor <input id="glaettungsfaktor" value="<?php echo $this->dataMap["bedarfsanalyse_faktor"]; ?> "></div> <button onclick="javascript:berechnen()">Berechnen</button> <div>Ergebnis <input id="ergebnis" value="<?php echo $this->dataMap["bedarfsanalyse_ergebnis"]; ?> "></div> </div> </div> <div id="operationen"> <div id ="einfuegen"> <div id="teil"> Teil erstellen <input type="text" id="teil_bezeichnung" value="Produkt1"> <input type="text" id="teil_preis" value="Preis"> <input type="text" id="teil_typ" value="Kategorie"> <input type="text" id="teil_angeboten" value="wird es angeboten?"> <input type="text" id="teil_bild" value="bildurl"> <input type="text" id="teil_beschreibung" value="beschreibung" size="94"> <button onclick="javascript:teil_hinzufuegen()">Eintragen</button> </div> <div id="struktur"> Struktur erstellen <input type="text" id="struktur_otnr" value="OTNR"> <input type="text" id="struktur_utnr" value="UTNR"> <input type="text" id="struktur_menge" value="Menge"> <button onclick="javascript:struktur_hinzufuegen()">Eintragen</button> </div> <div id="kunde"> Kunde erstellen <input type="text" id="kunde_Name" value="Name"> <input type="text" id="kunde_Vorname" value="Vorname"> <input type="text" id="kunde_eMail" value="eMail"> <button onclick="javascript:kunde_hinzufuegen()">Eintragen</button> </div> <div id="bestellung"> Bestellung erstellen <input type="text" id="bestellung_KundenNr" value="KundenNr"> <button onclick="javascript:bestllung_hinzufuegen()">Eintragen</button> Artikel der Bestellung hinzufuegen <input type="text" id="bestellung_BestellungsNr" value="BestellungsNr"> <input type="text" id="bestellung_TNr" value="TeileNr"> <button onclick="javascript:artikel_bestellung_hinzufuegen()">Eintragen</button> </div> <div id="pagehits"> Seiten Statistik <?php MonitorEntry::showPageHits(); ?> </div> <div id="artikelhits"> </div> <div id="bedarfs_daten"> Bedarfs Daten <?php AuftragsVerfolgung::printBedarfTabelle($this->dataMap["bedarfs_daten"]); ?> </div> <div id="bedarfsableitungs_daten"> Bedarfsableitungen <?php AuftragsVerfolgung::printBedarfAbleitungsTabelle($this->dataMap["bedarfsableitungs_daten"]); ?> </div> </div> </div> </div> <?php }