add save text for claims/complaints form while validation error

This commit is contained in:
smanylov
2026-04-30 14:27:56 +07:00
parent 010a8f3a5a
commit 0cc9230672
3 changed files with 11 additions and 3 deletions
+1 -1
View File
@@ -93,7 +93,7 @@ export const createComplaintSchema = z
.trim(), .trim(),
}) })
export const createCaseSchema = z export const createClaimSchema = z
.object({ .object({
textArea: z textArea: z
.string() .string()
+7 -2
View File
@@ -1,7 +1,7 @@
'use server' 'use server'
import { getSessionData } from '@/app/actions/session'; import { getSessionData } from '@/app/actions/session';
import { API_BASE_URL, createComplaintSchema, createCaseSchema } from '@/app/actions/definitions'; import { API_BASE_URL, createComplaintSchema, createClaimSchema } from '@/app/actions/definitions';
export async function getViolationSearchStatus() { export async function getViolationSearchStatus() {
const token = await getSessionData('token'); const token = await getSessionData('token');
@@ -560,6 +560,7 @@ export async function fetchCaseInfo(id: number) {
interface caseBody { interface caseBody {
previousText: string, previousText: string,
previousCaseTitle: string, previousCaseTitle: string,
previousAmount: string,
violationID: string | null, violationID: string | null,
success: boolean, success: boolean,
errorMessage?: Record<string, string> | null errorMessage?: Record<string, string> | null
@@ -576,7 +577,7 @@ export async function createCase(
const caseTitle = formData.get('caseTitle') as string || ''; const caseTitle = formData.get('caseTitle') as string || '';
const amount = formData.get('amount') as string || ''; const amount = formData.get('amount') as string || '';
const validatedFields = createCaseSchema.safeParse({ const validatedFields = createClaimSchema.safeParse({
textArea, textArea,
caseTitle caseTitle
}); });
@@ -598,6 +599,7 @@ export async function createCase(
violationID: violationId, violationID: violationId,
previousText: textArea, previousText: textArea,
previousCaseTitle: caseTitle, previousCaseTitle: caseTitle,
previousAmount: amount,
success: false, success: false,
errorMessage: errors errorMessage: errors
} }
@@ -634,6 +636,7 @@ export async function createCase(
violationID: violationId, violationID: violationId,
previousCaseTitle: caseTitle, previousCaseTitle: caseTitle,
previousText: textArea, previousText: textArea,
previousAmount: amount,
success: true success: true
}; };
} else { } else {
@@ -654,6 +657,7 @@ export async function createCase(
violationID: violationId, violationID: violationId,
previousText: textArea, previousText: textArea,
previousCaseTitle: caseTitle, previousCaseTitle: caseTitle,
previousAmount: amount,
success: false, success: false,
errorMessage: errors errorMessage: errors
} }
@@ -665,6 +669,7 @@ export async function createCase(
violationID: violationId, violationID: violationId,
previousText: textArea, previousText: textArea,
previousCaseTitle: caseTitle, previousCaseTitle: caseTitle,
previousAmount: amount,
success: false, success: false,
errorMessage: errors errorMessage: errors
} }
@@ -100,6 +100,7 @@ export default function CaseViolation({ selectedViolation, updateStatusHandler,
name="caseTitle" name="caseTitle"
className="note-case-input" className="note-case-input"
placeholder={t('fill-title-of-the-case') + '...'} placeholder={t('fill-title-of-the-case') + '...'}
defaultValue={state?.previousCaseTitle ? state?.previousCaseTitle : ''}
/> />
</div> </div>
@@ -137,6 +138,7 @@ export default function CaseViolation({ selectedViolation, updateStatusHandler,
name="amount" name="amount"
className="note-case-input" className="note-case-input"
placeholder={t('enter-the-amount-of-damage') + '...'} placeholder={t('enter-the-amount-of-damage') + '...'}
defaultValue={state?.previousAmount ? state?.previousAmount : ''}
/> />
</div> </div>
@@ -176,6 +178,7 @@ export default function CaseViolation({ selectedViolation, updateStatusHandler,
name="note" name="note"
className="note-textarea" className="note-textarea"
placeholder={t('fill-text-of-the-case') + '...'} placeholder={t('fill-text-of-the-case') + '...'}
defaultValue={state?.previousText ? state?.previousText : ''}
> >
</textarea> </textarea>
</div> </div>