- Add OpenApiDocs controller for serving bundled API docs - Split monolithic api-docs.yaml into modular components/ - Add organized paths/ directory with endpoint definitions - Create bundling scripts (JS, PHP, Python) for merging docs - Add API_DOCS_README.md with documentation guidelines - Update Routes.php for new API documentation endpoints - Update swagger.php view and TestDefSiteModel
151 lines
3.3 KiB
YAML
151 lines
3.3 KiB
YAML
/api/ordertest:
|
|
get:
|
|
tags: [Orders]
|
|
summary: List orders
|
|
security:
|
|
- bearerAuth: []
|
|
parameters:
|
|
- name: page
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
- name: perPage
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
- name: InternalPID
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
description: Filter by internal patient ID
|
|
- name: OrderStatus
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum: [ORD, SCH, ANA, VER, REV, REP]
|
|
description: |
|
|
ORD: Ordered
|
|
SCH: Scheduled
|
|
ANA: Analysis
|
|
VER: Verified
|
|
REV: Reviewed
|
|
REP: Reported
|
|
responses:
|
|
'200':
|
|
description: List of orders
|
|
|
|
post:
|
|
tags: [Orders]
|
|
summary: Create order
|
|
security:
|
|
- bearerAuth: []
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- PatientID
|
|
- Tests
|
|
properties:
|
|
PatientID:
|
|
type: string
|
|
VisitID:
|
|
type: string
|
|
Priority:
|
|
type: string
|
|
enum: [R, S, U]
|
|
description: |
|
|
R: Routine
|
|
S: Stat
|
|
U: Urgent
|
|
SiteID:
|
|
type: integer
|
|
RequestingPhysician:
|
|
type: string
|
|
Tests:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
TestID:
|
|
type: integer
|
|
SpecimenType:
|
|
type: string
|
|
responses:
|
|
'201':
|
|
description: Order created successfully
|
|
|
|
patch:
|
|
tags: [Orders]
|
|
summary: Update order
|
|
security:
|
|
- bearerAuth: []
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../components/schemas/orders.yaml#/OrderTest'
|
|
responses:
|
|
'200':
|
|
description: Order updated
|
|
|
|
delete:
|
|
tags: [Orders]
|
|
summary: Delete order
|
|
security:
|
|
- bearerAuth: []
|
|
responses:
|
|
'200':
|
|
description: Order deleted
|
|
|
|
/api/ordertest/status:
|
|
post:
|
|
tags: [Orders]
|
|
summary: Update order status
|
|
security:
|
|
- bearerAuth: []
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- OrderID
|
|
- OrderStatus
|
|
properties:
|
|
OrderID:
|
|
type: string
|
|
OrderStatus:
|
|
type: string
|
|
enum: [ORD, SCH, ANA, VER, REV, REP]
|
|
description: |
|
|
ORD: Ordered
|
|
SCH: Scheduled
|
|
ANA: Analysis
|
|
VER: Verified
|
|
REV: Reviewed
|
|
REP: Reported
|
|
responses:
|
|
'200':
|
|
description: Order status updated
|
|
|
|
/api/ordertest/{id}:
|
|
get:
|
|
tags: [Orders]
|
|
summary: Get order by ID
|
|
security:
|
|
- bearerAuth: []
|
|
parameters:
|
|
- name: id
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: Order details
|