improvement: treatment plan turned into a wizard. shift+click control added to FDI tooth chart for cunnected prosthesises.

This commit is contained in:
2026-07-17 00:39:32 +03:30
parent cf07b4d8a8
commit 68fc9d5d6d
28 changed files with 1461 additions and 477 deletions

View File

@@ -3,6 +3,8 @@ export type LabTaskStatus = 'IN_PROGRESS' | 'COMPLETED';
export interface LabCaseProsthesisGroup {
prosthesisTypeCode: string;
teeth: string[];
connected?: boolean;
selectionGroupId?: string;
}
export interface LabCaseListItem {

View File

@@ -20,6 +20,8 @@ export interface LabCaseActivityItem {
export interface PatientLabCaseProsthesisGroup {
prosthesisTypeCode: string;
teeth: string[];
connected?: boolean;
selectionGroupId?: string;
}
export interface PatientLabCaseSummary {

View File

@@ -58,6 +58,16 @@ export interface LabCaseToothProsthesisDraft {
detailClientId: string;
tooth: string;
prosthesisTypeCode: string;
/** Links connected/single selection group for shared prosthesis + lab tasks. */
selectionGroupId?: string;
}
export type ToothSelectionKind = 'connected' | 'single';
export interface ToothSelectionGroup {
groupId: string;
kind: ToothSelectionKind;
teeth: FdiToothId[];
}
export interface LabCaseSendInfo {
@@ -79,6 +89,7 @@ export interface PastTreatmentDetail {
clientId: string;
treatmentType: TreatmentType;
teeth: FdiToothId[];
toothSelectionGroups?: ToothSelectionGroup[];
notes?: string | null;
attachmentMetas?: TreatmentAttachmentMeta[];
labCaseId?: string | null;
@@ -102,11 +113,13 @@ export interface PastLabCase {
clientId: string;
treatmentType: string;
teeth: FdiToothId[];
toothSelectionGroups?: ToothSelectionGroup[];
} | null;
toothProsthesis?: Array<{
treatmentDetailId: string;
tooth: string;
prosthesisTypeCode: string;
selectionGroupId?: string;
}>;
sends?: LabCaseSendInfo[];
dueDate?: string | null;
@@ -136,6 +149,7 @@ export interface TreatmentDetailDraft {
id?: string;
treatmentType: TreatmentType;
teeth: FdiToothId[];
toothSelectionGroups: ToothSelectionGroup[];
comment: string;
attachmentMetas: TreatmentAttachmentMeta[];
labCaseId?: string | null;
@@ -166,6 +180,7 @@ export type SavedTreatmentDetailPayload = {
id?: string;
treatmentType: TreatmentType;
teeth: FdiToothId[];
toothSelectionGroups?: ToothSelectionGroup[];
comment: string;
attachmentIds: string[];
};
@@ -182,6 +197,7 @@ export interface SaveLabCasePayload {
treatmentDetailId: string;
tooth: string;
prosthesisTypeCode: string;
selectionGroupId?: string;
}>;
attachmentIds?: string[];
dueDate?: string | null;
@@ -204,6 +220,7 @@ export interface LabCaseResponse {
clientId: string;
treatmentType: string;
teeth: string[];
toothSelectionGroups?: ToothSelectionGroup[];
} | null;
sends: LabCaseSendInfo[];
dueDate: string | null;