Christian
a98a5784b7
Fix: Return single order object ved cancel_order (ikke list)
...
BUG FIX:
- execute_query returnerer list, men TModuleOrder(**updated) forventede dict
- TypeError: argument after ** must be a mapping, not list
- Changed til updated[0] for at få første row
- Dette er den SIDSTE execute_query/execute_query_single bug i order_service.py
ERROR: TModuleOrder() argument after ** must be a mapping, not list
→ return TModuleOrder(**updated)
→ updated er list, skal være dict
2025-12-23 00:46:38 +01:00
Christian
0fdf4549d6
Fix: Tilføj RETURNING id til order INSERT statements
...
CRITICAL BUG FIX:
- execute_insert() kalder cursor.fetchone() men INSERT havde ingen RETURNING clause
- Forårsagede '500: no results to fetch' ved order oprettelse
- Tilføjet RETURNING id til:
* tmodule_orders INSERT (linje 222)
* tmodule_order_lines INSERT (linje 240)
- Opdateret database.py docstring til at gøre RETURNING requirement klart
ERROR: ProgrammingError - no results to fetch
→ INSERT INTO tmodule_orders ... VALUES (...)
→ Manglede RETURNING id
2025-12-23 00:29:25 +01:00
Christian
718de1a6bd
Fix: Remove hourly_rate query from customers table (kolonne eksisterer ikke)
...
BUG FIX:
- _get_hourly_rate() tried to query hourly_rate from customers table
- customers table har ikke hourly_rate kolonne
- Forårsagede '500: no results to fetch' fejl ved order oprettelse
- Changed execute_query_single → execute_query for tmodule_customers check
- Removed hub customer rate check (ikke relevant)
- Falls back til default rate fra settings
ERROR: SELECT hourly_rate FROM customers WHERE id = 512
→ column 'hourly_rate' does not exist
2025-12-23 00:23:01 +01:00
Christian
0205516422
Cleanup: Fjernet duplikat order check i cancel_order
2025-12-22 22:20:20 +01:00
Christian
dd23312731
Fix: Flere steder i order_service brugte execute_query_single forkert
2025-12-22 17:13:10 +01:00
Christian
0d9af55dfc
Fix: Timetracking ordre generering brugte execute_query_single i stedet for execute_query
2025-12-22 16:57:52 +01:00
Christian
3628cbd9fe
Fix: Kontakt detail viser nu relaterede firmaer i Firmaer fanen
2025-12-22 16:40:49 +01:00
Christian
d2c7a8a624
Fix: SQL ambiguous column error i contacts søgning - prefikseret med c.
2025-12-22 16:04:49 +01:00
Christian
9fe17e7f85
Fix: Tilføjet company_count og company_names til contacts API med JOIN
2025-12-22 15:48:21 +01:00
Christian
ba0a2fd160
Fix: Ændret debug endpoint path for at undgå conflict
2025-12-22 15:43:47 +01:00
Christian
bd2de09076
Add: Debug endpoint for contact-company links
2025-12-22 15:35:26 +01:00
Christian
5bb6e73a26
Fix: Contacts query skulle returnere alle rækker ikke kun én
2025-12-22 15:29:28 +01:00
Christian
e4b940009f
Feature: Auto-create customers from vTiger accounts when linking contacts
2025-12-22 15:20:29 +01:00
Christian
e541758c44
Add: Sync diagnostics endpoint for troubleshooting contact linking
2025-12-22 15:14:31 +01:00
Christian
6d949d7060
Refactor: Komplet omskrivning af kontakt sync med simpel logik
2025-12-22 15:05:40 +01:00
Christian
0fb404dff5
Fix: Rettet indentation fejl i kontakt linking kode
2025-12-22 14:41:44 +01:00
Christian
0b8a4ff5d0
Debug: Rettet debug logging counter for kontakter
2025-12-22 14:36:55 +01:00
Christian
82ecfda404
Debug: Tilføjet logging af account_id værdier for kontakter
2025-12-22 14:34:07 +01:00
Christian
6398a7ca5f
Debug: Ændret logging level for kontakt linking fejl (debug → info)
2025-12-22 14:25:41 +01:00
Christian
ddcf64ae78
Fix: Tjek for duplicate vtiger_id før update (undgår constraint violation)
2025-12-22 14:15:17 +01:00
Christian
0b6d286332
Debug: Tilføjet bedre logging til vTiger matching for at identificere problem
2025-12-22 14:13:44 +01:00
Christian
64935b5808
Fix: Tilføjet pagination til kontakter + forbedret relation linking
2025-12-22 13:24:41 +01:00
Christian
62fc3cb4dd
Fix: Check for existing customer by CVR også (undgå duplicate key error)
2025-12-22 13:18:36 +01:00
Christian
198c6c56f4
Fix: Truncate country code til max 2 chars (ISO format)
2025-12-22 13:17:03 +01:00
Christian
a9f5714662
Feature: Omstruktureret sync - e-conomic er nu primær kilde, vTiger linker bagefter
2025-12-22 13:02:24 +01:00
Christian
e5dc0f64d3
Fix: Rettet vTiger pagination - bruger ID-baseret filtering i stedet for LIMIT OFFSET
2025-12-22 12:59:12 +01:00
Christian
94781227b2
Fix: Implementeret pagination i vTiger sync for at hente ALLE kunder (batch size 200)
2025-12-22 12:53:11 +01:00
Christian
af6e868828
Fix: Tilføjet manglende VTIGER_ENABLED og ECONOMIC_ENABLED fields i Settings
2025-12-22 11:44:13 +01:00
Christian
187b72238d
Fix: Fjernet LIMIT fra vTiger sync for at hente ALLE kunder og kontakter
2025-12-22 11:39:07 +01:00
Christian
41f7ae991c
Fix: Rettet test-economic endpoint - fjernet ikke-eksisterende get_self() kald
2025-12-22 11:17:36 +01:00
Christian
7fd596612c
Feature: Tilføjet /api/v1/system/test-economic endpoint til at teste e-conomic API forbindelse
2025-12-22 11:15:16 +01:00
Christian
35447cbd4f
Feature: Tilføjet /api/v1/settings/sync-from-env endpoint til at synkronisere .env værdier ind i settings database
2025-12-22 11:04:09 +01:00
Christian
c5ce819a15
Fix: Rettet typo i e-conomic sync (verifiot_matched_count → verified_count) og tilføjet not_matched til return value
2025-12-22 10:48:04 +01:00
Christian
8b71524437
Add verified count to e-conomic sync (separate new matches from existing verifications)
2025-12-19 16:56:39 +01:00
Christian
030071e8d5
Improve e-conomic sync: Only match new customers, verify existing ones
2025-12-19 16:54:57 +01:00
Christian
5d8617bed3
Fix: Add pagination for e-conomic customers (max 1000 per page)
2025-12-19 16:53:39 +01:00
Christian
f6303fa804
Fix: Change Customer schema datetime fields to str for proper serialization
2025-12-19 16:45:22 +01:00
Christian
c9af509e1c
Implement e-conomic customer sync and CVR search (get_customers + search_customer_by_cvr)
2025-12-19 16:41:11 +01:00
Christian
55478c20d3
Add detailed sync logging with precise changes (oprettet/opdateret/linket med firma/CVR info)
2025-12-19 16:36:41 +01:00
Christian
c8e005dd07
Fix: Only fetchall() when query has RETURNING clause or is SELECT
2025-12-19 16:30:03 +01:00
Christian
3f66bd07e6
Fix: Remove WHERE clauses and cf_854 field from vTiger queries (API doesn't support empty string comparison)
2025-12-19 15:34:49 +01:00
Christian
8bc633d59c
Fix: Convert vTiger SQL queries to single-line (API requires no line breaks)
2025-12-19 15:28:25 +01:00
Christian
c2cf8cf5a3
Enhance sync logging with detailed stats (behandlet/oprettet/opdateret/sprunget over)
2025-12-19 15:19:36 +01:00
Christian
ed0491c567
Add showNotification function for sync alerts
2025-12-19 13:24:16 +01:00
Christian
6e2a32165e
Fix: Close tags grid div properly in settings
...
Missing closing div tag and malformed comment caused sync tab to be empty
2025-12-19 13:12:33 +01:00
Christian
7c69cb22e7
Feature: Add sync page to settings
...
- Add Sync navigation tab in settings
- Sync UI with status cards (total, vTiger, e-conomic)
- Action cards for vTiger and e-conomic sync
- Sync log with real-time updates
- JavaScript functions for sync operations
- Backend sync router with vTiger account sync
- Backend vTiger contacts sync with customer linking
- Placeholder for e-conomic sync (needs get_customers method)
- Name normalization for company matching
- CVR number matching and validation
2025-12-19 13:09:42 +01:00
Christian
a011f36385
Feature: Add tags administration to settings page
...
- Add Tags navigation tab in settings
- Modern card-based grid layout for tags
- Quick stats dashboard (6 KPI cards)
- Smart filtering (type + inactive toggle)
- Create/Edit/Delete functionality
- Color picker with hex input sync
- Auto-color suggestion based on tag type
- Bootstrap Icons selector
- Responsive 3-column layout
2025-12-19 08:06:56 +01:00
Christian
15f39f13ce
Fix: Replace execute_query_single with execute_query in email router
...
execute_query_single function does not exist in database module.
All calls should use execute_query instead.
2025-12-19 07:56:05 +01:00
Christian
fdac8b855e
Fix: Strip whitespace from env vars before validation
...
Pydantic cannot parse 'true ' (with trailing spaces) as boolean.
Added field_validator to automatically strip whitespace from all string inputs.
2025-12-17 20:58:01 +01:00
Christian
2361bd2277
Fix: Add missing env vars to Settings class and remove inline comments from .env
...
- Added API_RELOAD, CORS_ORIGINS to Settings
- Added deployment-specific vars: POSTGRES_*, RELEASE_VERSION, GITEA_URL, GITHUB_TOKEN, GITHUB_REPO
- Removed inline comments from boolean values (Pydantic can't parse them)
- Updated CORS middleware to use CORS_ORIGINS with fallback to ALLOWED_ORIGINS
2025-12-17 17:28:50 +01:00