| 30.03.2026 18:32:12 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Reconcile/CustomerReconcileService.php
|
Rewrite: byCustomerNumber replaces byKnr (all formats), WaWi JOIN wawi_dbo_tadresse, Lexoffice as third source, CustomerDataSyncService triggered in confirm()/confirmAllAbove() |
|
|
| 30.03.2026 18:32:12 |
shoptour2 |
create |
|
|
/srv/shoptour2/app/Services/Reconcile/CustomerDataSyncService.php
|
New: syncs customer fields from import tables (Ninox/WaWi/Lexoffice) using newest-value-wins logic after reconcile match confirmation |
|
|
| 30.03.2026 18:32:12 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Http/Controllers/Admin/ReconcileCustomerController.php
|
Accept lexoffice as valid source, fix createFrom() to use source customer_number, update search/sort for all three sources |
|
|
| 30.03.2026 18:32:12 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/admin/reconcile/customers.blade.php
|
Add Lexoffice tab, fix table row rendering for lexoffice source fields, update method color map |
|
|
| 30.03.2026 18:32:12 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeImport.php
|
reconcileContacts() now creates confirmed source_matches entries when linking lexoffice contacts to customers |
|
|
| 30.03.2026 08:40:42 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Models/Catalog/Product.php
|
Add placeholderImageUrl() method — category-aware placeholder image (Wasser/Bier/Softdrinks/Wein-Spirituosen) |
|
|
| 30.03.2026 08:40:42 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/shop/index.blade.php
|
Replace SVG placeholder with category-aware placeholder image |
|
|
| 30.03.2026 08:40:42 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/shop/cart.blade.php
|
Replace SVG placeholder with category-aware placeholder image |
|
|
| 30.03.2026 08:40:42 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/shop/account/order-detail.blade.php
|
Replace emoji placeholder with category-aware placeholder image |
|
|
| 30.03.2026 08:40:42 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/shop/product.blade.php
|
Replace SVG placeholders with category-aware placeholder images (main + bundle components) |
|
|
| 30.03.2026 07:28:24 |
changetracker |
edit |
|
|
/srv/changetracker/hook.sh
|
Tokens aus transcript_path/message.usage auslesen und im API-Call mitsenden |
|
|
| 30.03.2026 07:28:19 |
shoptour2 |
edit |
|
160,881
|
/srv/shoptour2/test.php
|
|
|
|
| 30.03.2026 07:24:39 |
changetracker |
edit |
|
|
/srv/changetracker/app/Http/Controllers/DashboardController.php
|
total_tokens und tokens_today Stats hinzugefügt |
|
|
| 30.03.2026 07:24:39 |
changetracker |
create |
DB
|
|
/srv/changetracker/database/migrations/2026_03_30_000001_add_tokens_to_changes_table.php
|
Neue tokens Spalte auf changes-Tabelle |
|
|
| 30.03.2026 07:24:39 |
changetracker |
edit |
|
|
/srv/changetracker/resources/views/dashboard.blade.php
|
Tokens-Spalte in Tabelle, zwei neue Stat-Cards, Detail-Ansicht |
|
|
| 30.03.2026 07:24:39 |
changetracker |
edit |
|
|
/srv/changetracker/app/Http/Controllers/Api/ChangeController.php
|
tokens in store-Validierung und index-Response ergänzt |
|
|
| 30.03.2026 07:24:39 |
changetracker |
edit |
|
|
/srv/changetracker/app/Models/Change.php
|
tokens zu fillable und casts hinzugefügt |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
edit |
|
|
/srv/shoptour2/routes/web.php
|
Route account.invoices GET /mein-konto/rechnungen und lexoffice import-payments |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Http/Controllers/Shop/AccountController.php
|
Neue invoices() Methode: Rechnungen/Zahlungen aus Lexoffice für Kundenkonto |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
create |
|
|
/srv/shoptour2/resources/views/shop/account/invoices.blade.php
|
Neue View: Rechnungen & Zahlungen im Kundenkonto mit Saldo-Card |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/shop/layout.blade.php
|
Rechnungen-Menüpunkt im User-Dropdown (nur wenn lexoffice_contact_id gesetzt) |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/shop/account/dashboard.blade.php
|
Rechnungen-Kachel im Quick-Nav wenn lexoffice verknüpft |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
edit |
|
|
/srv/shoptour2/routes/console.php
|
Lexoffice Schedules: stündlich sync, täglich full, alle 5 Min payments |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
create |
|
|
/srv/shoptour2/app/Console/Commands/LexofficeSyncCommand.php
|
Artisan Command lexoffice:sync für stündliche Synchronisation von Kontakten und Belegen |
|
|
| 30.03.2026 07:22:14 |
shoptour2 |
edit |
|
|
/srv/shoptour2/docker-compose.yml
|
Neuer scheduler Service: führt php artisan schedule:run jede Minute aus |
|
|
| 30.03.2026 07:21:59 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Models/Admin/LexofficeVoucher.php
|
payments_fetched_at zu fillable und casts hinzugefügt |
|
|
| 30.03.2026 07:21:59 |
shoptour2 |
create |
|
|
/srv/shoptour2/app/Console/Commands/LexofficeImportPayments.php
|
Artisan Command lexoffice:import-payments mit --batch und --reset Option |
|
|
| 30.03.2026 07:21:59 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Http/Controllers/Admin/AdminIntegrationController.php
|
lexofficeImportPayments Action: 30 Belege pro Klick, zeigt verbleibende Anzahl |
|
|
| 30.03.2026 07:21:59 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000010_add_payments_fetched_at_to_lexoffice_vouchers.php
|
payments_fetched_at Spalte auf lexoffice_vouchers für Batch-Tracking |
|
|
| 30.03.2026 07:21:38 |
shoptour2 |
create |
|
|
/srv/shoptour2/app/Models/Admin/LexofficePayment.php
|
Neues Model LexofficePayment mit formattedAmount() |
|
|
| 30.03.2026 07:21:38 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeImport.php
|
Neue Methode importPayments() mit Batch-Tracking, Fix Betrag-Konvertierung (* 1_000_000 statt /100) |
|
|
| 30.03.2026 07:21:38 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeClient.php
|
Neue Methode getPayments(voucherId) für GET /payments/{id} |
|
|
| 30.03.2026 07:21:38 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000009_create_lexoffice_payments_table.php
|
Neue Tabelle lexoffice_payments für Eingangs-/Ausgangszahlungen |
|
|
| 29.03.2026 14:41:04 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Models/Admin/LexofficeVoucher.php
|
Add raw_json to fillable + casts |
|
|
| 29.03.2026 14:41:04 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeImport.php
|
Fix importVouchers: iterate all type x status combos (both required by API); fix break level; add error logging |
|
|
| 29.03.2026 14:41:04 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeClient.php
|
Fix get(): infinite retry on 429 with exponential backoff; enforce size>=25 for /articles; replace all direct http()->get() with get() helper |
|
|
| 29.03.2026 11:02:42 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeClient.php
|
Add rate-limit retry: get() helper with 600ms delay + exponential backoff on HTTP 429 |
|
|
| 29.03.2026 11:02:42 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeImport.php
|
Wrap each importAll() sub-call in try/catch so one unavailable endpoint does not abort the full import |
|
|
| 29.03.2026 10:59:29 |
shoptour2 |
create |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficeImport.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:29 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Services/Integrations/LexofficePull.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:29 |
shoptour2 |
edit |
|
|
/srv/shoptour2/routes/web.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:29 |
shoptour2 |
edit |
|
|
/srv/shoptour2/app/Http/Controllers/Admin/AdminIntegrationController.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:29 |
shoptour2 |
edit |
|
|
/srv/shoptour2/resources/views/admin/integrations/lexoffice.blade.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:28 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000001_create_lexoffice_contacts_table.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:28 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000002_create_lexoffice_articles_table.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:28 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000003_create_lexoffice_payment_conditions_table.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:28 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000004_create_lexoffice_posting_categories_table.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:28 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000005_create_lexoffice_print_layouts_table.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:28 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000006_create_lexoffice_recurring_templates_table.php
|
Lexoffice raw import layer |
|
|
| 29.03.2026 10:59:28 |
shoptour2 |
create |
DB
|
|
/srv/shoptour2/database/migrations/2026_03_29_000007_create_lexoffice_countries_table.php
|
Lexoffice raw import layer |
|
|