Add address fields to sales invoices and implement related validations

- Introduced new columns `address`, `latitude`, and `longitude` in the `sales_invoices` table to store location details.
- Updated the `SalesInvoicesService` to handle the new fields, including validation for address format and geographical coordinates.
- Enhanced the `SalesInvoiceDto` and related data transfer objects to include the new fields for API requests and responses.
- Added unit and e2e tests to ensure proper handling of the new fields and validate their integration within the sales invoice workflow.
- Created a new migration script to apply the database schema changes for the sales invoices.
This commit is contained in:
shancheas
2026-09-01 09:50:19 +07:00
parent 23028abd48
commit 0e73d14381
23 changed files with 444 additions and 33 deletions
@@ -136,6 +136,9 @@ export class SalesInvoicesWriteController {
branchId: dto.branchId,
divisionId: dto.divisionId,
customerId: dto.customerId,
address: dto.address,
latitude: dto.latitude,
longitude: dto.longitude,
notes: dto.notes,
products: dto.products,
status: dto.status,
@@ -179,6 +182,9 @@ export class SalesInvoicesWriteController {
branchId: dto.branchId,
divisionId: dto.divisionId,
customerId: dto.customerId,
address: dto.address,
latitude: dto.latitude,
longitude: dto.longitude,
notes: dto.notes,
products: dto.products,
userId,