121 lines
2.6 KiB
YAML
121 lines
2.6 KiB
YAML
|
|
User:
|
||
|
|
type: object
|
||
|
|
properties:
|
||
|
|
UserID:
|
||
|
|
type: integer
|
||
|
|
description: Unique user identifier
|
||
|
|
Username:
|
||
|
|
type: string
|
||
|
|
description: Unique login username
|
||
|
|
Email:
|
||
|
|
type: string
|
||
|
|
format: email
|
||
|
|
description: User email address
|
||
|
|
Name:
|
||
|
|
type: string
|
||
|
|
description: Full name of the user
|
||
|
|
Role:
|
||
|
|
type: string
|
||
|
|
description: User role (admin, technician, doctor, etc.)
|
||
|
|
Department:
|
||
|
|
type: string
|
||
|
|
description: Department name
|
||
|
|
IsActive:
|
||
|
|
type: boolean
|
||
|
|
description: Whether the user account is active
|
||
|
|
CreatedAt:
|
||
|
|
type: string
|
||
|
|
format: date-time
|
||
|
|
description: Creation timestamp
|
||
|
|
UpdatedAt:
|
||
|
|
type: string
|
||
|
|
format: date-time
|
||
|
|
description: Last update timestamp
|
||
|
|
DelDate:
|
||
|
|
type: string
|
||
|
|
format: date-time
|
||
|
|
nullable: true
|
||
|
|
description: Soft delete timestamp (null if active)
|
||
|
|
|
||
|
|
UserCreate:
|
||
|
|
type: object
|
||
|
|
required:
|
||
|
|
- Username
|
||
|
|
- Email
|
||
|
|
properties:
|
||
|
|
Username:
|
||
|
|
type: string
|
||
|
|
minLength: 3
|
||
|
|
maxLength: 50
|
||
|
|
description: Unique login username
|
||
|
|
Email:
|
||
|
|
type: string
|
||
|
|
format: email
|
||
|
|
maxLength: 100
|
||
|
|
description: User email address
|
||
|
|
Name:
|
||
|
|
type: string
|
||
|
|
description: Full name of the user
|
||
|
|
Role:
|
||
|
|
type: string
|
||
|
|
description: User role
|
||
|
|
Department:
|
||
|
|
type: string
|
||
|
|
description: Department name
|
||
|
|
IsActive:
|
||
|
|
type: boolean
|
||
|
|
default: true
|
||
|
|
description: Whether the user account is active
|
||
|
|
|
||
|
|
UserUpdate:
|
||
|
|
type: object
|
||
|
|
required:
|
||
|
|
- UserID
|
||
|
|
properties:
|
||
|
|
UserID:
|
||
|
|
type: integer
|
||
|
|
description: User ID to update
|
||
|
|
Email:
|
||
|
|
type: string
|
||
|
|
format: email
|
||
|
|
description: User email address
|
||
|
|
Name:
|
||
|
|
type: string
|
||
|
|
description: Full name of the user
|
||
|
|
Role:
|
||
|
|
type: string
|
||
|
|
description: User role
|
||
|
|
Department:
|
||
|
|
type: string
|
||
|
|
description: Department name
|
||
|
|
IsActive:
|
||
|
|
type: boolean
|
||
|
|
description: Whether the user account is active
|
||
|
|
|
||
|
|
UserListResponse:
|
||
|
|
type: object
|
||
|
|
properties:
|
||
|
|
status:
|
||
|
|
type: string
|
||
|
|
example: success
|
||
|
|
message:
|
||
|
|
type: string
|
||
|
|
example: Users retrieved successfully
|
||
|
|
data:
|
||
|
|
type: object
|
||
|
|
properties:
|
||
|
|
users:
|
||
|
|
type: array
|
||
|
|
items:
|
||
|
|
$ref: '#/User'
|
||
|
|
pagination:
|
||
|
|
type: object
|
||
|
|
properties:
|
||
|
|
current_page:
|
||
|
|
type: integer
|
||
|
|
per_page:
|
||
|
|
type: integer
|
||
|
|
total:
|
||
|
|
type: integer
|
||
|
|
total_pages:
|
||
|
|
type: integer
|