fix invoice informations

This commit is contained in:
2026-04-16 11:42:11 +03:00
parent 973149e974
commit f17dd1486c
20 changed files with 2579 additions and 178 deletions
+882 -18
View File
@@ -462,8 +462,8 @@
],
"summary": "GET /api/profile",
"responses": {
"200": {
"description": "OK",
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
@@ -21668,6 +21668,290 @@
}
},
"/api/estimates/{id}": {
"get": {
"tags": [
"Estimates"
],
"summary": "Display the specified estimate.",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"title": {
"type": "string"
},
"customer_id": {
"type": "integer"
},
"vehicle_id": {
"type": "integer"
},
"department_id": {
"type": "integer"
},
"estimate_number": {
"type": "string"
},
"date": {
"type": "string"
},
"has_insurance": {
"type": "boolean"
},
"enable_digital_authorisation": {
"type": "boolean"
},
"insurance_type_id": {
"type": "integer"
},
"insurer_id": {
"type": "integer"
},
"service_writer_id": {
"type": "integer"
},
"footer": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"labels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"title": {
"type": "string"
},
"color_code": {
"type": "string"
},
"pivot": {
"type": "object",
"properties": {
"estimate_id": {
"type": "integer"
},
"label_id": {
"type": "integer"
}
}
}
}
}
},
"customer_remarks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"estimate_id": {
"type": "integer"
},
"remark": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
}
}
},
"vehicle": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"registration_number": {
"type": "string"
},
"make": {
"type": "string"
},
"model": {
"type": "string"
}
}
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
}
}
},
"insurance_type": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"title": {
"type": "string"
}
}
},
"insurer": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
}
}
},
"service_writer": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
}
}
}
}
}
}
},
"example": {
"data": {
"id": 1,
"title": "Estimate for Toyota Camry",
"customer_id": 1,
"vehicle_id": 1,
"department_id": 1,
"estimate_number": "EST-001",
"date": "2026-03-31",
"has_insurance": false,
"enable_digital_authorisation": false,
"insurance_type_id": 1,
"insurer_id": 2,
"service_writer_id": 1,
"footer": "Thank you for your business.",
"created_at": "2026-03-31T10:00:00.000000Z",
"updated_at": "2026-03-31T10:00:00.000000Z",
"labels": [
{
"id": 1,
"title": "Urgent",
"color_code": "#FF0000",
"pivot": {
"estimate_id": 1,
"label_id": 1
}
}
],
"customer_remarks": [
{
"id": 1,
"estimate_id": 1,
"remark": "Oil change recommended.",
"created_at": "2026-03-31T10:00:00.000000Z",
"updated_at": "2026-03-31T10:00:00.000000Z"
}
],
"customer": {
"id": 1,
"first_name": "John",
"last_name": "Doe"
},
"vehicle": {
"id": 1,
"registration_number": "ABC-1234",
"make": "Toyota",
"model": "Camry"
},
"department": {
"id": 1,
"name": "Service"
},
"insurance_type": {
"id": 1,
"title": "Comprehensive"
},
"insurer": {
"id": 2,
"first_name": "Alex",
"last_name": "Insurer"
},
"service_writer": {
"id": 1,
"first_name": "Sam",
"last_name": "Writer"
}
}
}
}
}
}
}
},
"put": {
"tags": [
"Estimates"
@@ -42973,6 +43257,24 @@
"estimate_id": {
"type": "integer"
},
"kms_in": {
"type": "integer"
},
"has_insurance": {
"type": "boolean"
},
"insurer_id": {
"type": "integer"
},
"invoice_to_id": {
"type": "integer"
},
"billing_address_id": {
"type": "integer"
},
"delivery_address_id": {
"type": "integer"
},
"invoice_date": {
"type": "string"
},
@@ -42988,17 +43290,195 @@
"invoice_number": {
"type": "string"
},
"invoice_title": {
"type": "string"
},
"department_id": {
"type": "integer"
},
"notes": {
"type": "string"
},
"terms_and_conditions": {
"type": "string"
},
"status": {
"type": "string"
},
"received_payment": {
"type": "boolean"
},
"payment_mode_id": {
"type": "integer"
},
"deposit_to": {
"type": "string"
},
"amount": {
"type": "integer"
},
"discount": {
"type": "string"
},
"inspection_categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"inspection_category_id": {
"type": "integer"
},
"rate_type": {
"type": "string"
},
"labor_rate": {
"type": "integer"
},
"working_hours": {
"type": "integer"
},
"labor_hours": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"parts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"part_id": {
"type": "integer"
},
"quantity": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"expenses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"expense_id": {
"type": "integer"
},
"quantity": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"services": {
"type": "array",
"items": {
"type": "object",
"properties": {
"service_id": {
"type": "integer"
},
"rate_type": {
"type": "string"
},
"labor_rate_id": {
"type": "integer"
},
"working_hours": {
"type": "integer"
},
"labor_hours": {
"type": "integer"
},
"quantity": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"service_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"service_group_id": {
"type": "integer"
},
"rate_type": {
"type": "string"
},
"labor_rate_id": {
"type": "integer"
},
"working_hours": {
"type": "integer"
},
"labor_hours": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
}
}
},
@@ -43007,22 +43487,94 @@
"customer_id": 1,
"vehicle_id": 1,
"estimate_id": 1,
"kms_in": 50000,
"has_insurance": false,
"insurer_id": 2,
"invoice_to_id": 1,
"billing_address_id": 10,
"delivery_address_id": 11,
"invoice_date": "2026-03-31",
"due_date": "2026-04-14",
"payment_terms_id": 1,
"invoice_sequence_id": 1,
"invoice_number": "INV-001",
"invoice_title": "Tax Invoice",
"department_id": 1,
"notes": "string",
"notes": "Vehicle service and parts",
"terms_and_conditions": "Payment due in 14 days.",
"status": "draft",
"discount": "no"
"received_payment": false,
"payment_mode_id": 1,
"deposit_to": "Main Account",
"amount": 2500,
"discount": "no",
"inspection_categories": [
{
"inspection_category_id": 1,
"rate_type": "flat_rate",
"labor_rate": 500,
"working_hours": 1,
"labor_hours": 1,
"rate": 500,
"chart_of_account": "4000",
"description": "General inspection",
"department_id": 1
}
],
"parts": [
{
"part_id": 1,
"quantity": 2,
"rate": 150,
"chart_of_account": "4100",
"description": "Oil filter",
"department_id": 1
}
],
"expenses": [
{
"expense_id": 1,
"quantity": 1,
"rate": 100,
"chart_of_account": "4200",
"description": "Shop supplies",
"department_id": 1
}
],
"services": [
{
"service_id": 1,
"rate_type": "hourly",
"labor_rate_id": 1,
"working_hours": 2,
"labor_hours": 2,
"quantity": 1,
"rate": 800,
"chart_of_account": "4300",
"description": "Engine service",
"department_id": 1
}
],
"service_groups": [
{
"service_group_id": 1,
"rate_type": "flat_rate",
"labor_rate_id": 1,
"working_hours": 1,
"labor_hours": 1,
"rate": 600,
"chart_of_account": "4400",
"description": "Major service package",
"department_id": 1
}
]
}
}
}
},
"responses": {
"200": {
"description": "OK",
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
@@ -43098,7 +43650,7 @@
"type": "string"
},
"received_payment": {
"type": "integer"
"type": "boolean"
},
"payment_mode_id": {
"type": "integer"
@@ -43119,25 +43671,253 @@
"updated_at": {
"type": "string",
"format": "date-time"
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "integer"
}
}
},
"vehicle": {
"type": "object",
"properties": {
"id": {
"type": "integer"
}
}
},
"invoice_sequence": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"title": {
"type": "string"
}
}
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
}
}
},
"invoice_inspection_categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"invoice_id": {
"type": "integer"
},
"inspection_category_id": {
"type": "integer"
},
"rate_type": {
"type": "string"
},
"labor_rate": {
"type": "integer"
},
"working_hours": {
"type": "integer"
},
"labor_hours": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"invoice_parts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"invoice_id": {
"type": "integer"
},
"part_id": {
"type": "integer"
},
"quantity": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"invoice_expenses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"invoice_id": {
"type": "integer"
},
"expense_id": {
"type": "integer"
},
"quantity": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"invoice_services": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"invoice_id": {
"type": "integer"
},
"service_id": {
"type": "integer"
},
"rate_type": {
"type": "string"
},
"labor_rate_id": {
"type": "integer"
},
"working_hours": {
"type": "integer"
},
"labor_hours": {
"type": "integer"
},
"quantity": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
},
"invoice_service_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"invoice_id": {
"type": "integer"
},
"service_group_id": {
"type": "integer"
},
"rate_type": {
"type": "string"
},
"labor_rate_id": {
"type": "integer"
},
"working_hours": {
"type": "integer"
},
"labor_hours": {
"type": "integer"
},
"rate": {
"type": "integer"
},
"chart_of_account": {
"type": "string"
},
"description": {
"type": "string"
},
"department_id": {
"type": "integer"
}
}
}
}
}
}
}
},
"example": {
"message": "Operation completed successfully.",
"message": "Invoice created successfully.",
"data": {
"id": 1,
"subject": "Invoice for Job Card 001",
"subject": "Invoice for Service",
"customer_id": 1,
"vehicle_id": 1,
"estimate_id": 1,
"kms_in": 50000,
"has_insurance": false,
"insurer_id": 1,
"insurer_id": 2,
"invoice_to_id": 1,
"billing_address_id": 1,
"delivery_address_id": 1,
"billing_address_id": 10,
"delivery_address_id": 11,
"invoice_date": "2026-03-31",
"due_date": "2026-04-14",
"payment_terms_id": 1,
@@ -43145,16 +43925,100 @@
"invoice_number": "INV-001",
"invoice_title": "Tax Invoice",
"department_id": 1,
"notes": "string",
"terms_and_conditions": "string",
"notes": "Vehicle service and parts",
"terms_and_conditions": "Payment due in 14 days.",
"status": "draft",
"received_payment": 0,
"received_payment": false,
"payment_mode_id": 1,
"deposit_to": "string",
"amount": 0,
"deposit_to": "Main Account",
"amount": 2500,
"discount": "no",
"created_at": "2026-03-31T10:00:00.000000Z",
"updated_at": "2026-03-31T10:00:00.000000Z"
"updated_at": "2026-03-31T10:00:00.000000Z",
"customer": {
"id": 1
},
"vehicle": {
"id": 1
},
"invoice_sequence": {
"id": 1,
"title": "INV"
},
"department": {
"id": 1,
"name": "Service"
},
"invoice_inspection_categories": [
{
"id": 1,
"invoice_id": 1,
"inspection_category_id": 1,
"rate_type": "flat_rate",
"labor_rate": 500,
"working_hours": 1,
"labor_hours": 1,
"rate": 500,
"chart_of_account": "4000",
"description": "General inspection",
"department_id": 1
}
],
"invoice_parts": [
{
"id": 1,
"invoice_id": 1,
"part_id": 1,
"quantity": 2,
"rate": 150,
"chart_of_account": "4100",
"description": "Oil filter",
"department_id": 1
}
],
"invoice_expenses": [
{
"id": 1,
"invoice_id": 1,
"expense_id": 1,
"quantity": 1,
"rate": 100,
"chart_of_account": "4200",
"description": "Shop supplies",
"department_id": 1
}
],
"invoice_services": [
{
"id": 1,
"invoice_id": 1,
"service_id": 1,
"rate_type": "hourly",
"labor_rate_id": 1,
"working_hours": 2,
"labor_hours": 2,
"quantity": 1,
"rate": 800,
"chart_of_account": "4300",
"description": "Engine service",
"department_id": 1
}
],
"invoice_service_groups": [
{
"id": 1,
"invoice_id": 1,
"service_group_id": 1,
"rate_type": "flat_rate",
"labor_rate_id": 1,
"working_hours": 1,
"labor_hours": 1,
"rate": 600,
"chart_of_account": "4400",
"description": "Major service package",
"department_id": 1
}
]
}
}
}