feat(activity): merge CAD + render jobs into unified timeline

- Single chronological list sorted by updated_at (newest first)
- Type badges distinguish CAD processing (FileCode2) from Render jobs (Image)
- Render job rows now link directly to the order (/orders/:id)
- Remove separate "Render Jobs" and "CAD File Processing" sections
- Stat cards simplified to 4: CAD active/failed + Render active/failed
- Backend: add order_id to RenderJobEntry response
- Frontend: add order_id to RenderJobEntry interface, remove flamenco_job_id

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-06 20:01:03 +01:00
parent ab3f9c734a
commit d138bc4bc4
3 changed files with 135 additions and 120 deletions
+2
View File
@@ -33,6 +33,7 @@ class CadActivityEntry(BaseModel):
class RenderJobEntry(BaseModel):
order_line_id: str
order_id: str | None
order_number: str | None
product_name: str | None
output_type_name: str | None
@@ -134,6 +135,7 @@ async def get_worker_activity(
for rl in render_lines:
render_entries.append(RenderJobEntry(
order_line_id=str(rl.id),
order_id=str(rl.order_id) if rl.order_id else None,
order_number=rl.order.order_number if rl.order else None,
product_name=rl.product.name if rl.product else None,
output_type_name=rl.output_type.name if rl.output_type else None,