feat: add API endpoints for creating inspections from templates and sharing documents

This commit is contained in:
2026-05-18 14:43:11 +04:00
parent 5570527e69
commit 2d6e3c5734
3 changed files with 583 additions and 0 deletions
+183
View File
@@ -11786,6 +11786,120 @@ export interface paths {
patch?: never;
trace?: never;
};
"/api/inspections/from-template": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Create inspection from a template (DVI flow). */
post: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
/**
* @example {
* "template_id": 1,
* "title": "Pre-Service Inspection",
* "customer_id": 1,
* "vehicle_id": 1,
* "department_id": 1,
* "employee_id": 1,
* "order_number": "INSP-001",
* "date": "2026-03-31",
* "time": "09:00:00",
* "odometer": 12500,
* "note": "Initial walk-around notes.",
* "inspection_category_id": 1
* }
*/
"application/json": {
template_id?: number;
title?: string;
customer_id?: number;
vehicle_id?: number;
department_id?: number;
employee_id?: number;
order_number?: string;
date?: string;
time?: string;
odometer?: number;
note?: string;
inspection_category_id?: number;
};
};
};
responses: {
/** @description Created */
201: {
headers: {
[name: string]: unknown;
};
content: {
/**
* @example {
* "message": "Inspection created successfully",
* "data": {
* "id": 1,
* "title": "Pre-Service Inspection",
* "customer_id": 1,
* "vehicle_id": 1,
* "department_id": 1,
* "employee_id": 1,
* "order_number": "INSP-001",
* "date": "2026-03-31",
* "time": "09:00:00",
* "odometer": 12500,
* "note": "Initial walk-around notes.",
* "inspection_category_id": 1,
* "template_id": 1,
* "status": "in_progress",
* "created_at": "2026-03-31T10:00:00.000000Z",
* "updated_at": "2026-03-31T10:00:00.000000Z"
* }
* }
*/
"application/json": {
message?: string;
data?: {
id?: number;
title?: string;
customer_id?: number;
vehicle_id?: number;
department_id?: number;
employee_id?: number;
order_number?: string;
date?: string;
time?: string;
odometer?: number;
note?: string;
inspection_category_id?: number;
template_id?: number;
status?: string;
/** Format: date-time */
created_at?: string;
/** Format: date-time */
updated_at?: string;
};
};
};
};
};
};
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/inspections/{id}": {
parameters: {
query?: never;
@@ -38964,6 +39078,75 @@ export interface paths {
patch?: never;
trace?: never;
};
"/api/documents/share": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** POST /api/documents/share */
post: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
/**
* @example {
* "document_type": "invoice",
* "document_id": 1,
* "channel": "email",
* "email": "customer@example.com",
* "phone": "+971500000000",
* "message": "Please find your document."
* }
*/
"application/json": {
document_type?: string;
document_id?: number;
channel?: string;
email?: string;
phone?: string;
message?: string;
};
};
};
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown;
};
content: {
/**
* @example {
* "share_url": "https://example.com/share/abc",
* "whatsapp_url": "https://wa.me/971500000000?text=...",
* "expires_at": "2026-05-19T12:00:00+00:00"
* }
*/
"application/json": {
share_url?: string;
whatsapp_url?: string;
/** Format: date-time */
expires_at?: string;
};
};
};
};
};
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
}
export type webhooks = Record<string, never>;
export interface components {