Projekt

Allgemein

Aktionen

GX-Bug #49699

geschlossen

Ajax Request für Tooltips in neuer Bestellübersicht sehr langsam

Von Till Tepelmann vor mehr als 8 Jahren hinzugefügt. Vor etwa 8 Jahren aktualisiert.

Status:
Erledigt
Priorität:
Hoch
Zugewiesen an:
Ronald Loyko
Kategorie:
Adminbereich
Zielversion:
% erledigt:

100%

Geschätzter Aufwand:
Steps to reproduce:
Betroffene Versionen:
3.3.1.1
Release Notes Langtext:

Die Tooltips in der Bestellübersicht werden jetzt schneller geladen, wenn in der Bestellung Artikel mit Customizer-Set-Daten vorhanden sind


Beschreibung

Ajax Request für Tooltips in neuer Bestellübersicht verhindert das Aufrufen anderer Admin Seiten, wenn sehr viele Attribute genutzt werden.

Hier werden alle Artikel und Attribute in einer schleife für alle angezeigten Bestellungen aus der Datenbank gelesen, sodass für jede Bestellung und jeden Artikel in jeder Bestellung mehrere SQL Befehle ausgeführt werden.
Hier wäre es eventuell sinnvoll dies in einem SQL zusammenzufassen für alle Bestellungen.


Checkliste 0/0


Zugehörige Tickets

Kopiert nach GX-Entwicklung - GX-Bug #51837: Ajax Request für Tooltips in neuer Bestellübersicht sehr langsamErledigtRonald Loyko

Aktionen
Aktionen #4

Von Alexandros Tselegidis vor mehr als 8 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Feedback geändert
  • Zugewiesen an wurde von Alexandros Tselegidis zu Till Tepelmann geändert

Ich brauche ein Support Ticket mit das Problem.

Aktionen #8

Von Alexandros Tselegidis vor mehr als 8 Jahren aktualisiert

Das Problem liegt bei die Abfrage des GXCustomizing Inhalt. Es kann sein dass ein Shopbetreiber sehr viele GXCustomizing Einträge hat etwas viel Zeit zum abfragen kostet. Für jeder Bestellartikel werden mehrere GXCustomizing Einträge geholt. Eine Lösung wäre GMGPrintContentManager perfomanter zu machen aber wenn das nicht geht, müssen wir einfach die GXCustomizing Einträge aus Bestellübersicht löschen.

$gPrintContentManager = new GMGPrintContentManager();
$gPrintResult = $gPrintContentManager->get_orders_products_content($orderItem['orders_products_id'], true);

foreach($gPrintResult as $gPrintRow)
{
$attributes[] = [
'name' => $gPrintRow['NAME'],
'value' => $gPrintRow['VALUE']
];
}

Aktionen