improvement: pdf generation added to cases feature.

This commit is contained in:
2026-07-18 22:00:44 +03:30
parent 408b2c3329
commit 538121d653
23 changed files with 1206 additions and 63 deletions

View File

@@ -75,6 +75,7 @@ export function CasesPage() {
const [loadingList, setLoadingList] = useState(false);
const [loadingDetail, setLoadingDetail] = useState(false);
const [updatingImportant, setUpdatingImportant] = useState(false);
const [updatingExternalCode, setUpdatingExternalCode] = useState(false);
const [assignableStaff, setAssignableStaff] = useState<AssignableTaskStaff[]>([]);
const [assigningTaskId, setAssigningTaskId] = useState<string | null>(null);
const [commentCount, setCommentCount] = useState(0);
@@ -330,6 +331,25 @@ export function CasesPage() {
}
}
async function handleCaseExternalCodeChange(externalCode: string | null) {
if (!selectedCaseId || !canEdit || !selectedCase) return;
const previousCase = selectedCase;
setSelectedCase({ ...selectedCase, externalCode });
setUpdatingExternalCode(true);
toast.setError('');
try {
const response = await casesApi.setCaseExternalCode(selectedCaseId, externalCode);
setSelectedCase(response.data);
} catch (error: unknown) {
setSelectedCase(previousCase);
toast.showError(getUserFacingError(error, tErrors, t('errorUpdateExternalCode')));
} finally {
setUpdatingExternalCode(false);
}
}
const filterSelectClass = `${FORM_SELECT_CLASS} w-full min-w-0 rounded-md py-1.5 text-xs sm:py-2 sm:text-sm`;
return (
@@ -550,6 +570,8 @@ export function CasesPage() {
canEditImportant={canEdit}
updatingImportant={updatingImportant}
onImportantChange={(checked) => void handleCaseImportantToggle(checked)}
updatingExternalCode={updatingExternalCode}
onExternalCodeChange={(code) => void handleCaseExternalCodeChange(code)}
assignableStaff={assignableStaff}
canAssignTasks={canEdit}
assigningTaskId={assigningTaskId}