improvement: tasks and cases feature updated based on the new prosthesis types and their steps. the whole assignment proccess removed from the flow.

This commit is contained in:
2026-07-07 15:31:09 +03:30
parent ed7e7b1d8f
commit cb63ced4e3
35 changed files with 1819 additions and 454 deletions

View File

@@ -319,7 +319,7 @@
},
"cases": {
"title": "Cases",
"subtitle": "Lab cases sent from linked clinics. Assign tasks and track progress by tooth.",
"subtitle": "Lab cases sent from linked clinics. Track progress and flag important tasks.",
"searchPlaceholder": "Search by patient name or mobile…",
"emptyList": "No cases received yet.",
"selectCaseHint": "Select a case from the list to view tasks.",
@@ -329,13 +329,17 @@
"taskProgressShort": "{progress} tasks",
"treatmentDetails": "Treatment details",
"teethLabel": "Teeth",
"tasksByTooth": "Tasks by tooth",
"toothGroupTitle": "Tooth {tooth} · {prosthesis} · {type}",
"tasksByTooth": "Tasks",
"toothGroupTitle": "Teeth {teeth} · {prosthesis}",
"noTasks": "No tasks were generated for this case.",
"unassigned": "Unassigned",
"statusPending": "Pending",
"statusInProgress": "In progress",
"statusCompleted": "Completed",
"importantLabel": "Important",
"markImportant": "Mark as important",
"lastUpdatedBy": "Updated by {name}",
"lastUpdatedUnknown": "Not started yet",
"timelineTitle": "History",
"timelineEntry": "{status} · {name} · {date}",
"errorLoadList": "Failed to load cases.",
"errorLoadDetail": "Failed to load case details.",
"errorUpdateTask": "Failed to update task.",
@@ -351,32 +355,63 @@
"prevPage": "Previous",
"nextPage": "Next",
"pageSummary": "Page {page} of {totalPages} ({total} cases)",
"priorityLabel": "Priority",
"statusLabel": "Status"
},
"tasks": {
"title": "Tasks",
"subtitle": "Your assigned lab tasks. Update status as you work through each step.",
"subtitleOwner": "All lab tasks in the organization. Assign tasks from Cases; update status on your own assignments here.",
"subtitle": "All lab tasks from connected clinics. Filter, sort, and update the status of each step.",
"subtitleOwner": "All lab tasks from connected clinics. Filter, sort, and update the status of each step.",
"loading": "Loading tasks…",
"emptyList": "No tasks assigned to you yet.",
"emptyListOwner": "No tasks in the lab inbox yet.",
"emptyList": "No tasks match the current filters.",
"emptyListOwner": "No tasks match the current filters.",
"noPermissionTitle": "Tasks",
"noPermissionBody": "You do not have permission to view tasks for this organization.",
"fromClinic": "From {name}",
"patientLabel": "Patient",
"taskDate": "{date}",
"priorityLabel": "Priority {n}",
"toothLabel": "Tooth {tooth}",
"unassigned": "Unassigned",
"assignedTo": "Assigned to {name}",
"statusPending": "Pending",
"teethLabel": "Teeth {teeth}",
"importantBadge": "Important",
"lastUpdatedBy": "Updated by {name}",
"statusInProgress": "In progress",
"statusCompleted": "Completed",
"searchPlaceholder": "Search patient or clinic…",
"filterClinic": "Clinic",
"filterClinicAll": "All clinics",
"filterStatus": "Status",
"filterStatusAll": "All statuses",
"showCompleted": "Show completed",
"importantOnly": "Important only",
"filterSentFrom": "From",
"filterSentTo": "To",
"sortBy": "Sort by",
"sortDate": "Date",
"sortStatus": "Status",
"sortClinic": "Clinic",
"sortPatient": "Patient",
"sortImportant": "Important",
"clearFilters": "Clear filters",
"commentsButton": "Comments",
"errorLoadList": "Failed to load tasks.",
"errorUpdateTask": "Failed to update task.",
"pageSummary": "Page {page} of {totalPages} ({total} tasks)"
},
"caseComments": {
"title": "Comments",
"placeholder": "Write a comment…",
"reply": "Reply…",
"post": "Post",
"empty": "No comments yet.",
"visibleToClinicToggle": "Visible to clinic",
"clinicCanSee": "Clinic can see this",
"hiddenFromClinic": "Hidden from clinic",
"makeVisible": "Make visible to clinic",
"makeHidden": "Hide from clinic",
"labAuthor": "Lab",
"clinicAuthor": "Clinic",
"errorLoad": "Failed to load comments.",
"errorPost": "Failed to post comment.",
"errorToggle": "Failed to update comment visibility."
},
"appointments": {
"title": "Appointments",
"subtitle": "Search a patient, pick a date, then click a time slot under a provider to book.",

View File

@@ -319,7 +319,7 @@
},
"cases": {
"title": "پرونده‌ها",
"subtitle": "پرونده‌های ارسالی از کلینیک‌های متصل. وظایف را تخصیص دهید و پیشرفت هر دندان را پیگیری کنید.",
"subtitle": "پرونده‌های ارسالی از کلینیک‌های متصل. پیشرفت را پیگیری کنید و وظایف مهم را علامت بزنید.",
"searchPlaceholder": "جستجو با نام یا موبایل بیمار…",
"emptyList": "هنوز پرونده‌ای دریافت نشده است.",
"selectCaseHint": "برای مشاهده وظایف، یک پرونده از فهرست انتخاب کنید.",
@@ -329,13 +329,17 @@
"taskProgressShort": "{progress} وظیفه",
"treatmentDetails": "جزئیات درمان",
"teethLabel": "دندان‌ها",
"tasksByTooth": "وظایف به تفکیک دندان",
"toothGroupTitle": "دندان {tooth} · {prosthesis} · {type}",
"tasksByTooth": "وظایف",
"toothGroupTitle": "دندان‌های {teeth} · {prosthesis}",
"noTasks": "برای این پرونده وظیفه‌ای ایجاد نشده است.",
"unassigned": "بدون مسئول",
"statusPending": "در انتظار",
"statusInProgress": "در حال انجام",
"statusCompleted": "انجام شده",
"importantLabel": "مهم",
"markImportant": "علامت‌گذاری به عنوان مهم",
"lastUpdatedBy": "به‌روزرسانی توسط {name}",
"lastUpdatedUnknown": "هنوز شروع نشده",
"timelineTitle": "تاریخچه",
"timelineEntry": "{status} · {name} · {date}",
"errorLoadList": "بارگذاری پرونده‌ها ناموفق بود.",
"errorLoadDetail": "بارگذاری جزئیات پرونده ناموفق بود.",
"errorUpdateTask": "به‌روزرسانی وظیفه ناموفق بود.",
@@ -351,32 +355,63 @@
"prevPage": "قبلی",
"nextPage": "بعدی",
"pageSummary": "صفحه {page} از {totalPages} ({total} پرونده)",
"priorityLabel": "اولویت",
"statusLabel": "وضعیت"
},
"tasks": {
"title": "وظایف",
"subtitle": "وظایف لاب اختصاص‌یافته به شما. وضعیت را در حین انجام هر مرحله به‌روز کنید.",
"subtitleOwner": "همه وظایف لاب در سازمان. تخصیص از بخش پرونده‌ها؛ به‌روزرسانی وضعیت برای وظایف خودتان اینجا.",
"subtitle": "همه وظایف لاب از کلینیک‌های متصل. فیلتر، مرتب‌سازی و به‌روزرسانی وضعیت هر مرحله.",
"subtitleOwner": "همه وظایف لاب از کلینیک‌های متصل. فیلتر، مرتب‌سازی و به‌روزرسانی وضعیت هر مرحله.",
"loading": "در حال بارگذاری وظایف…",
"emptyList": "هنوز وظیفه‌ای به شما اختصاص داده نشده است.",
"emptyListOwner": "هنوز وظیفه‌ای در صندوق ورودی لاب وجود ندارد.",
"emptyList": "هیچ وظیفه‌ای با فیلترهای فعلی مطابقت ندارد.",
"emptyListOwner": "هیچ وظیفه‌ای با فیلترهای فعلی مطابقت ندارد.",
"noPermissionTitle": "وظایف",
"noPermissionBody": "شما مجوز مشاهده وظایف برای این سازمان را ندارید.",
"fromClinic": "از {name}",
"patientLabel": "بیمار",
"taskDate": "{date}",
"priorityLabel": "اولویت {n}",
"toothLabel": "دندان {tooth}",
"unassigned": "اختصاص داده نشده",
"assignedTo": "اختصاص به {name}",
"statusPending": "در انتظار",
"teethLabel": "دندان‌های {teeth}",
"importantBadge": "مهم",
"lastUpdatedBy": "به‌روزرسانی توسط {name}",
"statusInProgress": "در حال انجام",
"statusCompleted": "تکمیل‌شده",
"searchPlaceholder": "جستجوی بیمار یا کلینیک…",
"filterClinic": "کلینیک",
"filterClinicAll": "همه کلینیک‌ها",
"filterStatus": "وضعیت",
"filterStatusAll": "همه وضعیت‌ها",
"showCompleted": "نمایش تکمیل‌شده‌ها",
"importantOnly": "فقط مهم‌ها",
"filterSentFrom": "از",
"filterSentTo": "تا",
"sortBy": "مرتب‌سازی بر اساس",
"sortDate": "تاریخ",
"sortStatus": "وضعیت",
"sortClinic": "کلینیک",
"sortPatient": "بیمار",
"sortImportant": "مهم",
"clearFilters": "پاک کردن فیلترها",
"commentsButton": "نظرات",
"errorLoadList": "بارگذاری وظایف ناموفق بود.",
"errorUpdateTask": "به‌روزرسانی وظیفه ناموفق بود.",
"pageSummary": "صفحه {page} از {totalPages} ({total} وظیفه)"
},
"caseComments": {
"title": "نظرات",
"placeholder": "یک نظر بنویسید…",
"reply": "پاسخ…",
"post": "ثبت",
"empty": "هنوز نظری ثبت نشده است.",
"visibleToClinicToggle": "قابل مشاهده برای کلینیک",
"clinicCanSee": "کلینیک می‌تواند ببیند",
"hiddenFromClinic": "پنهان از کلینیک",
"makeVisible": "نمایش به کلینیک",
"makeHidden": "پنهان از کلینیک",
"labAuthor": "آزمایشگاه",
"clinicAuthor": "کلینیک",
"errorLoad": "بارگذاری نظرات ناموفق بود.",
"errorPost": "ثبت نظر ناموفق بود.",
"errorToggle": "به‌روزرسانی وضعیت نمایش نظر ناموفق بود."
},
"appointments": {
"title": "نوبت‌ها",
"subtitle": "یک بیمار را جستجو کنید، تاریخ را انتخاب کنید، سپس روی یک زمان در زیر ارائه‌دهنده کلیک کنید تا رزرو کنید.",

View File

@@ -319,7 +319,7 @@
},
"cases": {
"title": "Dossiers",
"subtitle": "Labdossiers van gekoppelde klinieken. Wijs taken toe en volg de voortgang per tand.",
"subtitle": "Labdossiers van gekoppelde klinieken. Volg de voortgang en markeer belangrijke taken.",
"searchPlaceholder": "Zoeken op patiëntnaam of mobiel…",
"emptyList": "Nog geen dossiers ontvangen.",
"selectCaseHint": "Selecteer een dossier uit de lijst om taken te bekijken.",
@@ -329,13 +329,17 @@
"taskProgressShort": "{progress} taken",
"treatmentDetails": "Behandeldetails",
"teethLabel": "Tanden",
"tasksByTooth": "Taken per tand",
"toothGroupTitle": "Tand {tooth} · {prosthesis} · {type}",
"tasksByTooth": "Taken",
"toothGroupTitle": "Tanden {teeth} · {prosthesis}",
"noTasks": "Er zijn geen taken gegenereerd voor dit dossier.",
"unassigned": "Niet toegewezen",
"statusPending": "In afwachting",
"statusInProgress": "Bezig",
"statusCompleted": "Voltooid",
"importantLabel": "Belangrijk",
"markImportant": "Markeren als belangrijk",
"lastUpdatedBy": "Bijgewerkt door {name}",
"lastUpdatedUnknown": "Nog niet gestart",
"timelineTitle": "Geschiedenis",
"timelineEntry": "{status} · {name} · {date}",
"errorLoadList": "Dossiers laden mislukt.",
"errorLoadDetail": "Dossierdetails laden mislukt.",
"errorUpdateTask": "Taak bijwerken mislukt.",
@@ -351,32 +355,63 @@
"prevPage": "Vorige",
"nextPage": "Volgende",
"pageSummary": "Pagina {page} van {totalPages} ({total} dossiers)",
"priorityLabel": "Prioriteit",
"statusLabel": "Status"
},
"tasks": {
"title": "Taken",
"subtitle": "Uw toegewezen labtaken. Werk de status bij terwijl u elke stap uitvoert.",
"subtitleOwner": "Alle labtaken in de organisatie. Wijs toe via Dossiers; werk hier de status bij voor uw eigen taken.",
"subtitle": "Alle labtaken van gekoppelde klinieken. Filter, sorteer en werk de status van elke stap bij.",
"subtitleOwner": "Alle labtaken van gekoppelde klinieken. Filter, sorteer en werk de status van elke stap bij.",
"loading": "Taken laden…",
"emptyList": "Nog geen taken aan u toegewezen.",
"emptyListOwner": "Nog geen taken in de lab-inbox.",
"emptyList": "Geen taken komen overeen met de huidige filters.",
"emptyListOwner": "Geen taken komen overeen met de huidige filters.",
"noPermissionTitle": "Taken",
"noPermissionBody": "U heeft geen toestemming om taken voor deze organisatie te bekijken.",
"fromClinic": "Van {name}",
"patientLabel": "Patiënt",
"taskDate": "{date}",
"priorityLabel": "Prioriteit {n}",
"toothLabel": "Tand {tooth}",
"unassigned": "Niet toegewezen",
"assignedTo": "Toegewezen aan {name}",
"statusPending": "In afwachting",
"teethLabel": "Tanden {teeth}",
"importantBadge": "Belangrijk",
"lastUpdatedBy": "Bijgewerkt door {name}",
"statusInProgress": "Bezig",
"statusCompleted": "Voltooid",
"searchPlaceholder": "Zoek patiënt of kliniek…",
"filterClinic": "Kliniek",
"filterClinicAll": "Alle klinieken",
"filterStatus": "Status",
"filterStatusAll": "Alle statussen",
"showCompleted": "Voltooide tonen",
"importantOnly": "Alleen belangrijk",
"filterSentFrom": "Vanaf",
"filterSentTo": "Tot",
"sortBy": "Sorteren op",
"sortDate": "Datum",
"sortStatus": "Status",
"sortClinic": "Kliniek",
"sortPatient": "Patiënt",
"sortImportant": "Belangrijk",
"clearFilters": "Filters wissen",
"commentsButton": "Opmerkingen",
"errorLoadList": "Taken laden mislukt.",
"errorUpdateTask": "Taak bijwerken mislukt.",
"pageSummary": "Pagina {page} van {totalPages} ({total} taken)"
},
"caseComments": {
"title": "Opmerkingen",
"placeholder": "Schrijf een opmerking…",
"reply": "Antwoorden…",
"post": "Plaatsen",
"empty": "Nog geen opmerkingen.",
"visibleToClinicToggle": "Zichtbaar voor kliniek",
"clinicCanSee": "Kliniek kan dit zien",
"hiddenFromClinic": "Verborgen voor kliniek",
"makeVisible": "Zichtbaar maken voor kliniek",
"makeHidden": "Verbergen voor kliniek",
"labAuthor": "Lab",
"clinicAuthor": "Kliniek",
"errorLoad": "Opmerkingen laden mislukt.",
"errorPost": "Opmerking plaatsen mislukt.",
"errorToggle": "Zichtbaarheid bijwerken mislukt."
},
"appointments": {
"title": "Afspraken",
"subtitle": "Zoek een patiënt, kies een datum en klik vervolgens op een tijdslot onder een aanbieder om te boeken.",