Commit Graph

248 Commits

Author SHA1 Message Date
Christian
6de869c86a chore: bump version to 1.3.125 2026-01-26 17:07:25 +01:00
Christian
1f5d6a8536 fix: Add ALLOWED_EXTENSIONS config for file uploads
- Added ALLOWED_EXTENSIONS setting to core config
- Supports PDF, images, documents, and archives
- Fixes supplier invoice upload validation error
- Added configuration to .env.example
2026-01-26 17:07:17 +01:00
Christian
c9f04c77b4 chore: bump version to 1.3.124 2026-01-25 14:46:07 +01:00
Christian
6b7b63f7d7 feat: Add Abonnements Matrix feature with e-conomic invoice aggregation
- New SubscriptionMatrixService for billing matrix generation
- Products grouped by product number with monthly aggregation
- Support for archived, draft, sent, booked, paid, unpaid invoices
- Fixed amount calculation with fallback logic (grossAmount, unitNetPrice)
- Status mapping based on invoice type (draft, invoiced, paid)
- Frontend tab on customer detail page with dynamic table rendering
- Fixed Blåhund customer economic number linking
2026-01-25 14:46:00 +01:00
Christian
3dcd04396e feat(webshop): Initial implementation of webshop module with views, migrations, and templates
- Added views for webshop admin interface using FastAPI and Jinja2 templates.
- Created initial SQL migration for webshop configurations, products, orders, and order items.
- Defined module metadata in module.json for webshop.
- Implemented HTML template for the webshop index page.
- Documented frontend requirements and API contracts in WEBSHOP_FRONTEND_PROMPT.md.
- Introduced scripts for generating conversation summaries and testing Whisper capabilities.
2026-01-25 03:29:28 +01:00
Christian
eacbd36e83 feat: Implement Transcription Service for audio files using Whisper API
- Added `transcription_service.py` to handle audio transcription via Whisper API.
- Integrated logging for transcription processes and error handling.
- Supported audio format checks based on configuration settings.

docs: Create Ordre System Implementation Plan

- Drafted comprehensive implementation plan for e-conomic order integration.
- Outlined business requirements, database changes, backend and frontend implementation details.
- Included testing plan and deployment steps for the new order system.

feat: Add AI prompts and regex action capabilities

- Created `ai_prompts` table for storing custom AI prompts.
- Added regex extraction and linking action to email workflow actions.

feat: Introduce conversations module for transcribed audio

- Created `conversations` table to store transcribed conversations with relevant metadata.
- Added indexing for customer, ticket, and user linkage.
- Implemented full-text search capabilities for Danish language.

fix: Add category column to conversations for classification

- Added `category` column to `conversations` table for better conversation classification.
2026-01-11 19:23:21 +01:00
Christian
f62cd8104a feat: Enhance time tracking with Hub Worklog integration and editing capabilities
- Added hub_customer_id to TModuleApprovalStats for better tracking.
- Introduced TModuleWizardEditRequest for editing time entries, allowing updates to description, hours, and billing method.
- Implemented approval and rejection logic for Hub Worklogs, including handling negative IDs.
- Created a new endpoint for updating entry details, supporting both Hub Worklogs and Module Times.
- Updated frontend to include an edit modal for time entries, with specific fields for Hub Worklogs and Module Times.
- Enhanced customer statistics retrieval to include pending counts from Hub Worklogs.
- Added migrations for ticket enhancements, including new fields and constraints for worklogs and prepaid cards.
2026-01-10 21:09:29 +01:00
Christian
a1d4696005 feat: Add new time tracking wizard and registrations view
- Implemented a new simplified time tracking wizard (wizard2) for approval processes.
- Added a registrations view to list all time tracking entries.
- Enhanced the existing wizard.html to include a billable checkbox for entries.
- Updated JavaScript logic to handle billable state and travel status for time entries.
- Introduced a cleanup step in the deployment script to remove old images.
- Created a new HTML template for registrations with filtering and pagination capabilities.
2026-01-10 01:37:08 +01:00
Christian
19827d03a8 feat: Enhance time tracking by excluding billed entries from views and approval processes 2026-01-09 08:01:28 +01:00
Christian
ccb7714779 feat: Implement tracking of billed Hub order ID for time entries and update related services 2026-01-08 18:57:04 +01:00
Christian
cbcd0fe4e7 feat: Implement data consistency checking system for customer data across BMC Hub, vTiger, and e-conomic
- Added CustomerConsistencyService to compare and sync customer data.
- Introduced new API endpoints for data consistency checks and field synchronization.
- Enhanced customer detail page with alert for discrepancies and modal for manual syncing.
- Updated vTiger and e-conomic services to support fetching and updating customer data.
- Added configuration options for enabling/disabling sync operations and automatic checks.
- Implemented data normalization and error handling for robust comparisons.
- Documented the new system and its features in DATA_CONSISTENCY_SYSTEM.md.
2026-01-08 18:28:00 +01:00
Christian
c855f5d027 feat(migrations): add supplier invoice enhancements for accounting integration
- Added new columns to supplier_invoice_lines for contra_account, line_purpose, resale_customer_id, resale_order_number, is_invoiced_to_customer, and invoiced_date.
- Created indexes for faster filtering by purpose and resale status.
- Introduced economic_accounts table to cache e-conomic chart of accounts with relevant fields and indexes.
- Added comments for documentation on new columns and tables.
- Included success message for migration completion.
2026-01-07 10:32:41 +01:00
Christian
42b766b31e Add scripts for managing e-conomic customer numbers
- Implemented fix_economic_numbers.sh to correct invalid 10-digit economic_customer_number entries in the database.
- Created import_economic_csv.py for importing customers from a CSV file into the Hub database, handling updates and new entries.
- Developed match_all_customers.sh to match all customers from a CSV file to the Hub database, updating or creating records as necessary.
- Added simple_match.sh for a straightforward matching process of customers from a CSV file to the Hub database.
2026-01-06 19:59:07 +01:00
Christian
ca53573952 feat: Enhance email processing and backup scheduling
- Added PostgreSQL client installation to Dockerfile for database interactions.
- Updated BackupScheduler to manage both backup jobs and email fetching jobs.
- Implemented email fetching job with logging and error handling.
- Enhanced the frontend to display scheduled jobs, including email fetch status.
- Introduced email upload functionality with drag-and-drop support and progress tracking.
- Added import_method tracking to email_messages for better source identification.
- Updated email parsing logic for .eml and .msg files, including attachment handling.
- Removed obsolete email scheduler service as functionality is integrated into BackupScheduler.
- Updated requirements for extract-msg to the latest version.
- Created migration script to add import_method column to email_messages table.
2026-01-06 15:11:28 +01:00
Christian
5f603bdd2e chore: Bump version to 1.3.123 2026-01-06 13:17:36 +01:00
Christian
1f21ad2ec1 fix: Correct BMC Office router file structure 2026-01-06 13:17:28 +01:00
Christian
08fd2a04c7 feat: Complete activity logging system - customer CRUD, contacts, subscriptions, BMC Office 2026-01-06 13:16:25 +01:00
Christian
af044a7be8 feat: Add comprehensive customer activity logging for all CRUD operations 2026-01-06 13:12:46 +01:00
Christian
b03dd5c8f6 chore: Bump version to 1.3.122 2026-01-06 12:54:27 +01:00
Christian
50fbb5ab92 feat: Add activity logging for BMC Office subscription imports 2026-01-06 12:54:10 +01:00
Christian
5f486578c7 chore: Bump version to 1.3.121 2026-01-06 08:45:47 +01:00
Christian
2419ddc5d8 fix: Allow external navigation from settings menu 2026-01-06 08:45:36 +01:00
Christian
373c4da57c chore: Bump version to 1.3.120 2026-01-06 08:43:39 +01:00
Christian
c7986b0abf feat: Add BMC Office Import link to admin menu 2026-01-06 08:43:30 +01:00
Christian
cc76eb652a fix: Upgrade pandas to 2.2.3 for Python 3.13 compatibility and fix Dockerfile build order 2026-01-06 08:39:23 +01:00
Christian
1c7bb9ca3a feat: Add pandas and openpyxl for Excel upload 2026-01-06 08:21:54 +01:00
Christian
bd746b7f9c feat: Add BMC Office subscriptions Excel upload interface with auto customer mapping 2026-01-06 08:21:24 +01:00
Christian
da5ec19188 fix: Use execute_query instead of execute_query_single to return all customer contacts 2026-01-05 19:03:34 +01:00
Christian
935d2253f7 fix: Move order number from heading to otherReference field only 2026-01-05 18:56:24 +01:00
Christian
3195afe460 fix: Only use case_no from vtiger_data, never parse from vtiger_id (v1.3.116) 2026-01-05 17:17:46 +01:00
Christian
34ca9fca93 fix: Prioritize 'title' field over 'ticket_title' from vTiger (v1.3.115) 2026-01-05 17:16:44 +01:00
Christian
99eac06cfd fix: Wizard shows case title instead of case_no (v1.3.114) 2026-01-05 17:12:41 +01:00
Christian
0974f41bd1 feat: Add endpoint to fix empty case titles from vtiger_data (v1.3.113) 2026-01-05 17:06:44 +01:00
Christian
0b9765c5a2 fix: Use 'title' field from vTiger Cases as fallback for ticket_title (v1.3.112) 2026-01-05 16:56:28 +01:00
Christian
1ebb1fa2cd fix: Never use time descriptions as case title, only contact+date fallback (v1.3.111) 2026-01-05 16:52:58 +01:00
Christian
d99d542a24 fix: Use contact name + date as case title fallback (v1.3.110) 2026-01-05 16:44:18 +01:00
Christian
1e45ec70bf fix: Better case title fallback logic - use descriptions or 'Arbejde' (v1.3.109) 2026-01-05 16:43:16 +01:00
Christian
dfcb523e12 chore: Update VERSION to 1.3.108 2026-01-05 16:34:23 +01:00
Christian
11f9e97c1d fix: Use case_no from vtiger_data for order case numbers (v1.3.108) 2026-01-05 16:34:13 +01:00
Christian
031212ae82 chore: Update VERSION to 1.3.107 2026-01-05 16:08:51 +01:00
Christian
7bcae58fdf fix: Use localhost/ prefix for local images (v1.3.107) 2026-01-05 15:57:19 +01:00
Christian
9336edd5cc feat: Add manual customer linking endpoint (v1.3.106) 2026-01-05 14:15:04 +01:00
Christian
fa55e6b98e Fix: Simply-CRM sync opretter nu manglende customers i Hub (ikke kun opdaterer eksisterende) 2026-01-05 12:35:02 +01:00
Christian
808a8bb2ee Fix: Ambiguous column reference i link_tmodule_customers_to_hub (NOT EXISTS i stedet for NOT IN) 2026-01-05 11:50:14 +01:00
Christian
5e66ef6563 Add: Customer linking verification endpoint med health score og anbefalinger 2026-01-05 11:34:39 +01:00
Christian
05ec5b5903 Fix: Brug economic_acc_number field fra Simply-CRM (ikke account_no) 2026-01-05 11:28:45 +01:00
Christian
1380369dff Add: Sync e-conomic customer numbers fra Simply-CRM + auto-link timetracking customers 2026-01-05 11:08:49 +01:00
Christian
24a517a10c Fix: Brug fuldt case ID (ikke kun sidste 4 cifre) + auto-link kunder efter vTiger sync 2026-01-05 10:56:32 +01:00
Christian
68eb1d31d1 Fix: Bedre case title fallback og klarere fejlbesked for manglende customer linking 2026-01-05 10:42:57 +01:00
Christian
e69f211fbf Fix: Vis kun den specifikke entry når time_id parameter er sat 2026-01-02 16:53:25 +01:00