feat(backend): Fix client-profile endpoint and add attachment support

- Fixed client-profile GET endpoint to prevent 500 errors
- Made ClientProfileResponse fields optional (id, created_at, updated_at)
- Returns empty profile data instead of creating DB entry on GET
- Added new attachment model and schemas for file handling
- Added file handler core utility for upload management
This commit is contained in:
2026-02-09 13:27:45 -07:00
parent ea682d8cd9
commit d4ff32dac7
5 changed files with 234 additions and 8 deletions

View File

@@ -0,0 +1,25 @@
"""
Attachment Schemas - ServiceManagerWeb
"""
from pydantic import BaseModel, ConfigDict, Field
from datetime import datetime
from typing import Optional
import uuid
class AttachmentResponse(BaseModel):
"""Schema para respuesta de attachment"""
id: uuid.UUID
ticket_id: uuid.UUID
comment_id: Optional[uuid.UUID] = None
uploaded_by: uuid.UUID
filename: str
original_filename: str
mime_type: str
file_size: int
file_path: str
uploaded_by_name: Optional[str] = None
created_at: datetime
download_url: Optional[str] = None
model_config = ConfigDict(from_attributes=True)