1
0
Commit Graph

4461 Commits

Author SHA1 Message Date
Ahmed Bouhuolia 3e1ef4046c Merge pull request #1004 from bigcapitalhq/fix/pdf-template-logo-display
fix(server): PDF template logo not showing on reopen
2026-03-01 05:24:54 +02:00
Ahmed Bouhuolia b98485c5f3 fix(server): PDF template logo not showing on reopen
Generate presigned URL for companyLogoKey when retrieving PDF template
to allow the logo to display when reopening the branding template drawer.

- Inject GetAttachmentPresignedUrl service in GetPdfTemplateService
- Generate companyLogoUri from companyLogoKey in template attributes
- Add companyLogoUri to transformer included attributes

Fixes the issue where logo uploads and saves but doesn't show when
reopening the branding template customization drawer.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 05:22:01 +02:00
Ahmed Bouhuolia e2aee81a92 Merge branch 'main' into develop 2026-03-01 04:14:58 +02:00
Ahmed Bouhuolia 98713f8bf5 Merge pull request #1003 from bigcapitalhq/refactor/financial-sheet-report-tables
fix(webapp): use server formatted date range instead of client formatting
2026-03-01 04:12:21 +02:00
Ahmed Bouhuolia 6089e41278 refactor(webapp): use FinancialSheet in financial report tables and simplify component
Made-with: Cursor
2026-03-01 04:08:26 +02:00
Ahmed Bouhuolia a383c71424 Merge pull request #1000 from bigcapitalhq/fix/branch-warehouse-select-edit-form
fix(webapp): branch and warehouse select not showing saved values in edit mode
2026-02-27 04:49:54 +02:00
Ahmed Bouhuolia 2065afe108 fix(webapp): remove duplicated isNewMode from context 2026-02-27 04:46:59 +02:00
Ahmed Bouhuolia 7051256e60 fix(webapp): branch and warehouse select not showing saved values in edit mode
Fixed an issue where branch and warehouse select fields were not displaying
saved values when editing existing transactions. The useSetPrimaryBranchToForm
and useSetPrimaryWarehouseToForm hooks were overwriting saved values with
primary defaults on every form load.

Changes:
- Added isNewMode check to useSetPrimaryBranchToForm hook
- Added isNewMode check to useSetPrimaryWarehouseToForm hook
- Updated InvoiceFormProvider to expose isNewMode in context

Affected forms:
- Sales: Invoice, Estimate, Receipt, CreditNote, PaymentReceived
- Purchases: Bill, VendorCredit, PaymentMade
- Expense
- MakeJournal (Manual Journal)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-27 04:39:24 +02:00
Ahmed Bouhuolia 5dd7179cca Merge pull request #999 from bigcapitalhq/fix/attachments-for-all-transactions
fix(server): add attachment support for all transaction types
v0.24.15
2026-02-26 23:18:41 +02:00
Ahmed Bouhuolia 3575d54efa fix: add attachment support for all transaction types
Fixed attachments not showing in edit forms for various transaction types by:

1. Adding @InjectAttachable() decorator to models:
   - SaleReceipt, SaleEstimate, CreditNote, PaymentReceived
   - Bill, BillPayment, VendorCredit
   - ManualJournal, Expense

2. Fixing transformers to include attachments in API responses:
   - SaleReceiptTransformer, PaymentReceivedTransformer

3. Registering missing event subscribers in Attachment.module.ts:
   - AttachmentsOnSaleReceipts, AttachmentsOnSaleEstimates

4. Fixing DocumentLink model relation mapping:
   - Changed Document.default to Document for proper module export

5. Fixing PaymentReceived model_ref consistency:
   - Changed from 'PaymentReceive' to 'PaymentReceived' to match class name

6. Adding missing withGraphFetched('attachments') to GetPaymentReceived.service.ts

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 23:16:12 +02:00
Ahmed Bouhuolia 6991ec7780 Merge pull request #997 from bigcapitalhq/fix/model-timestamps-missing-columns
fix(models): remove timestamps from models where tables lack createdAt/updatedAt columns
v0.24.14
2026-02-26 05:59:49 +02:00
Ahmed Bouhuolia ad252d2e4a fix(models): remove timestamps from models where tables lack createdAt/updatedAt columns
Add withDateSessionMixin for proper timestamp handling and fix models
to return empty timestamps array when database tables don't have
created_at/updated_at columns. This prevents ORM insert/update errors.

Models updated:
- Branch, Role, RolePermission, ViewColumn, ViewRole
- InventoryAdjustment, InventoryAdjustmentEntry, InventoryTransactionMeta
- BillLandedCostEntry, CreditNote, CreditNoteAppliedInvoice, RefundCreditNote
- PaymentReceived, SaleInvoice, SaleReceipt, Item, ItemEntry
- RefundVendorCredit, VendorCreditAppliedBill
- ItemWarehouseQuantity, Warehouse, WarehouseTransfer, WarehouseTransferEntry
- Setting, TenantMetadataModel, TenantUser

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 05:57:55 +02:00
Ahmed Bouhuolia 12eb8c32dc Merge pull request #996 from bigcapitalhq/fix/account-type-not-selected-banking-edit
fix(webapp): account type not pre-selected when editing from banking page
2026-02-25 22:12:38 +02:00
Ahmed Bouhuolia ca68918caa fix(webapp): account type not pre-selected when editing from banking page
Change 'id' to 'accountId' in CashflowAccountsGrid to match the
AccountDialogProvider expected payload. The dialog provider expects
'accountId' to fetch account details and populate the form.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 22:08:58 +02:00
Ahmed Bouhuolia fa1acc9773 Merge pull request #995 from bigcapitalhq/fix/date-formats-banking-transactions
fix: use organization date format in banking transactions and financial reports
2026-02-25 20:35:23 +02:00
Ahmed Bouhuolia 558fc29962 fix: use organization date format in banking transactions and reports
- Add OrganizationSettingsModule to BankingTransactionsModule
- Update GetBankAccountTransactions to pass dateFormat from settings
- Add meta support to FinancialSheet base class
- Refactor TransactionsByReference to use IFinancialReportMeta
- Update frontend to use server-provided formatted_date
2026-02-25 20:33:31 +02:00
Ahmed Bouhuolia 8a32e13a79 Merge pull request #994 from bigcapitalhq/feat/account-settings-service
fix(accounts): add account settings service
2026-02-25 19:29:45 +02:00
Ahmed Bouhuolia d35915b16b feat(accounts): add account settings service
- Add AccountsSettingsService for managing account-related settings
- Update validators, create and edit services to use settings
- Add constants for account configuration
- Update frontend utils and translations

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 19:27:53 +02:00
Ahmed Bouhuolia b5d1a2c9d0 Merge pull request #992 from bigcapitalhq/fix/organization-date-formats-and-address-fields
fix(financial-statements): use stored date format settings in all reports
2026-02-25 07:10:41 +02:00
Ahmed Bouhuolia f5e74f3e88 fix(inventory): update baseCurrency retrieval in InventoryDetailsService
- Replace tenantMetadata.baseCurrency with meta.baseCurrency in InventoryDetailsService to ensure consistent currency usage across reports.
2026-02-25 07:10:09 +02:00
Ahmed Bouhuolia c83132b867 fix(financial-statements): use stored date format settings in all reports
- Replace hardcoded date formats ('YYYY/MM/DD') in all Meta classes with meta.dateFormat
- Add IFinancialReportMeta interface with baseCurrency and dateFormat fields
- Add DEFAULT_REPORT_META constant with default date format 'YYYY MMM DD'
- Update all sheet classes to accept IFinancialReportMeta parameter
- Update all services to pass dateFormat from meta to sheet constructors
- Fix customer/vendor transactions date formatting in table rows
- Add TenancyModule to SalesTaxLiabilityModule for dependency injection
- Make dateFormat optional in JournalSheet and GeneralLedger query types

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 07:05:31 +02:00
Ahmed Bouhuolia 88ff5db0f3 Merge pull request #989 from bigcapitalhq/fix/organization-date-formats-and-address-fields
fix(organization): align date formats and fix address field naming
v0.24.13
2026-02-24 22:45:10 +02:00
Ahmed Bouhuolia f35e85c3d2 fix(organization): align date formats and fix address field naming
- Fix date format mismatch between Miscellaneous and Organization constants
- Fix default date format casing ('DD MMM yyyy' -> 'DD MMM YYYY')
- Rename address fields from address_1/address_2 to address1/address2

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 22:42:29 +02:00
Ahmed Bouhuolia 29decf9c5a Merge pull request #987 from bigcapitalhq/feat/contact-address-country-fields
fix: country and address fields of customer and vendor forms
2026-02-24 20:55:23 +02:00
Ahmed Bouhuolia f149ff43b4 feat(contacts): add country field to customer and vendor address forms
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-24 20:53:14 +02:00
Ahmed Bouhuolia fb05af8c00 Merge pull request #979 from yk-a11y/fix/credit-note-apply-invoice-validation
fix: validate credit note per-entry amount against each invoice due amount
2026-02-24 02:55:47 +02:00
Ahmed Bouhuolia 688b1bfb56 fix(server): add invoices Map for validateInvoicesRemainingAmount 2026-02-24 02:52:28 +02:00
Ahmed Bouhuolia 0f8147daff Merge branch 'develop' into fix/credit-note-apply-invoice-validation 2026-02-24 02:42:23 +02:00
Ahmed Bouhuolia 96b24d4fb9 Merge pull request #982 from bigcapitalhq/fix/credit-notes-applied-invoice-delete
fix: Add DELETE endpoint for credit notes applied invoices
2026-02-24 02:17:37 +02:00
Ahmed Bouhuolia 2a87103bc8 fix: Add DELETE endpoint for credit notes applied invoices
- Add missing DELETE /credit-notes/applied-invoices/:id endpoint
- Fix CreditNotesApplyInvoice controller to use correct service methods
- Add missing GetCreditNoteAssociatedInvoicesToApply endpoint
- Add proper DTO for ApplyCreditNoteToInvoices
- Update frontend creditNote hook to use correct API paths

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 02:15:32 +02:00
Ahmed Bouhuolia 238b60144f Merge pull request #981 from bigcapitalhq/fix/register-verify-dark-mode
fix: add dark mode support to email confirmation UI
2026-02-23 01:10:50 +02:00
Ahmed Bouhuolia fcee85e358 fix: add dark mode support to email confirmation UI
Refactored RegisterVerify component to use xstyled for styling
with proper dark mode color values instead of hardcoded light theme colors.
2026-02-23 00:48:32 +02:00
Ahmed Bouhuolia 64a10053e3 Merge pull request #980 from bigcapitalhq/fix-signup-verification
fix: signup confirmation
v0.24.12
2026-02-23 00:39:45 +02:00
Ahmed Bouhuolia ce9f2a238f fix: signup confirmation 2026-02-23 00:37:56 +02:00
Yong ke Weng 75b98c39d8 fix: validate credit note per-entry amount against each invoice due amount
The `validateInvoicesRemainingAmount` method was incorrectly comparing the
total credit amount (sum of all entries) against each individual invoice's
due amount. This caused valid credit note applications to be rejected when
applying to multiple invoices where the total exceeded any single invoice's
due amount.

Changed the validation to compare each invoice's due amount against only the
specific entry amount being applied to that invoice.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 09:50:39 -05:00
Ahmed Bouhuolia 80e545072d Merge pull request #975 from bigcapitalhq/fix/localize-financial-reports
fix: localize hardcoded strings in financial reports
2026-02-18 22:09:05 +02:00
Ahmed Bouhuolia de3d4698ea fix: localize hardcoded strings in financial reports
- Fix cash_flow_statement.net_cash_investing not being localized
- Add translation keys for Account name, Total, sheet name, From/To dates
- Create contact_summary_balance.json for Customer/Vendor Balance Summary
- Create trial_balance_sheet.json for Trial Balance Sheet columns
- Create inventory_item_details.json for Inventory Item Details
- Create transactions_by_contact.json for Transactions by Contact
- Fix hardcoded strings in TrialBalanceSheetTable column labels
- Fix hardcoded 'Total' in CustomerBalanceSummary and VendorBalanceSummary
- Fix hardcoded column headers in InventoryItemDetailsTable
- Fix hardcoded Opening/Closing balance strings

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 22:07:00 +02:00
Ahmed Bouhuolia 171091e0e0 Merge pull request #972 from bigcapitalhq/fix/ahmedbouhuolia/invite-user-service
fix: invite user service issues
v0.24.11
2026-02-18 12:33:57 +02:00
Ahmed Bouhuolia 78032d7bfc fix: invite user service issues 2026-02-18 12:32:04 +02:00
Ahmed Bouhuolia 06b8a836c5 Merge pull request #967 from bigcapitalhq/fix/ahmedbouhuolia/baseurl-config-key
fix: correct config key for base URL in email services
v0.24.10
2026-02-18 01:31:08 +02:00
Ahmed Bouhuolia 37fa9f9bc6 fix: correct config key for base URL in email services 2026-02-18 01:28:48 +02:00
Ahmed Bouhuolia 17deeb18e3 Merge pull request #965 from bigcapitalhq/fix/ahmedbouhuolia/cashflow-transaction-type-consistency
fix: correct cash flow transaction type naming inconsistencies
v0.24.9
2026-02-16 23:05:22 +02:00
Ahmed Bouhuolia 8416b45f4e fix: correct cash flow transaction type naming inconsistencies
- Fix typo ONWERS_DRAWING -> OWNERS_DRAWING in server constants
- Change OwnerDrawing -> owner_drawing for consistency in webapp
- Fix typo TRANSACRIONS_TYPE -> TRANSACTIONS_TYPE
- Fix typo OnwersDrawing -> OwnerDrawing
- Add missing Icon and FDateInput imports
- Add dark mode styling for BranchRowDivider

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-02-16 23:02:38 +02:00
Ahmed Bouhuolia 3cc5aab80e Merge pull request #963 from bigcapitalhq/fix/ahmedbouhuolia/mail-queue-cleanup
fix: correct queue name, add missing await, and clean up constants
2026-02-16 22:27:08 +02:00
Ahmed Bouhuolia 93711a7bf4 fix: correct queue name, add missing await, and clean up constants 2026-02-16 22:23:41 +02:00
Ahmed Bouhuolia 43066c4f1f Merge pull request #962 from bigcapitalhq/feature/ahmedbouhuolia/add-permission-guards-to-credit-controllers
fix(server): add permission guards to credit note and vendor credit controllers
v0.24.8
2026-02-16 20:07:36 +02:00
Ahmed Bouhuolia d5402b6a9b feat: add permission guards to credit note and vendor credit controllers
Add AuthorizationGuard and PermissionGuard to the following controllers:
- CreditNoteRefundsController
- CreditNotesApplyInvoiceController
- VendorCreditApplyBillsController
- VendorCreditsRefundController

Add @RequirePermission decorators with appropriate actions:
- View action for GET endpoints
- Edit action for POST/DELETE endpoints
- Refund action for refund-related operations

Also fixes AuthorizationGuard to use userId from clsService instead of
user.id from request for consistency with the abilities cache.
2026-02-16 20:04:48 +02:00
Ahmed Bouhuolia 174aec78ca fix(webapp): send mail preview style 2026-02-16 17:45:04 +02:00
Ahmed Bouhuolia 7162e948dd Merge pull request #961 from bigcapitalhq/fix/trial-balance-sheet-filtering
fix: correct trial balance sheet filtering logic
2026-02-16 15:34:33 +02:00
Ahmed Bouhuolia 8ad1be1d52 fix: correct trial balance sheet filtering logic
- Include child account transactions when filtering parent accounts
- Fix order of operations in accounts section mapping
- Ensure accounts with child transactions are not incorrectly filtered out

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 15:27:33 +02:00