| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- from __future__ import annotations
- from datetime import datetime
- from pydantic import BaseModel, Field
- from app.schemas.common import ORMModel
- class DiagnosisRuleRead(ORMModel):
- id: str
- mine_id: str | None
- code: str
- name: str
- scene: str
- defect_type: str
- severity: str
- condition: dict
- threshold: dict
- output_template: str
- recommendation: str
- knowledge_refs: list
- enabled: bool
- version: str
- class DiagnosisTaskCreate(BaseModel):
- mine_id: str
- scene: str = "all"
- trigger_type: str = "manual"
- requested_by: str = ""
- input_snapshot: dict = Field(default_factory=dict)
- use_agent: bool = True
- class DiagnosisTaskRead(ORMModel):
- id: str
- mine_id: str
- task_no: str
- scene: str
- trigger_type: str
- status: str
- started_at: datetime | None
- finished_at: datetime | None
- requested_by: str
- model_name: str
- input_snapshot: dict
- error: str
- created_at: datetime
- updated_at: datetime
- class DiagnosisResultRead(ORMModel):
- id: str
- task_id: str
- rule_id: str | None
- defect_code: str
- defect_name: str
- scene: str
- severity: str
- confidence: float
- status: str
- root_cause: str
- conclusion: str
- recommendation: str
- related_objects: list
- raw_output: dict
- class DiagnosisEvidenceRead(ORMModel):
- id: str
- result_id: str
- evidence_type: str
- source_id: str
- source_name: str
- content: str
- confidence: float | None
- occurred_at: datetime | None
- metadata: dict = Field(validation_alias="metadata_json")
- class DiagnosisTaskDetail(DiagnosisTaskRead):
- results: list[DiagnosisResultRead] = Field(default_factory=list)
- evidence: list[DiagnosisEvidenceRead] = Field(default_factory=list)
- class DiagnosisRunRequest(BaseModel):
- mine_id: str
- scene: str = "all"
- object_ids: list[str] = Field(default_factory=list)
- context: dict = Field(default_factory=dict)
- requested_by: str = ""
|