Files
Alberto-Audrix 32a36cceff
CI / lint-and-test (push) Canceled after 0s
first commit
2026-07-28 08:55:05 +07:00

66 lines
2.2 KiB
TypeScript

import { OcrDocument, OcrStats } from '../types';
export const initialOcrDocuments: OcrDocument[] = [
{
id: 'ocr-1',
fileName: 'laporan_timbang_0308.pdf',
uploadedAt: new Date(Date.now() - 10 * 60 * 1000),
status: 'Completed',
documentType: 'Laporan Timbang',
accuracy: 99.2,
imageUrl: 'https://i.imgur.com/7g2Cw2s.png',
extractedText:
'LAPORAN TIMBANG HARIAN\nTanggal: 03-08-2025\nKandang: A-1\nTotal Timbang: 500 ekor\nBobot Rata-rata: 1565 g\nADG: 75 g',
},
{
id: 'ocr-2',
fileName: 'faktur_pakan_CP511.jpg',
uploadedAt: new Date(Date.now() - 35 * 60 * 1000),
status: 'Needs Review',
documentType: 'Faktur Pakan',
accuracy: 85.6,
imageUrl: 'https://i.imgur.com/rM2a3YV.png',
extractedText:
'FAKTUR PEMBELIAN PAKAN\nNo: INV/2025/VII/123\nSupplier: PT Pakan Sejahtera\nItem: CP 511 Bravo\nJumlah: 200 karung\nTotal Harga: Rp 95.000,000',
},
{
id: 'ocr-3',
fileName: 'catatan_harian_kdg_C.png',
uploadedAt: new Date(Date.now() - 2 * 60 * 60 * 1000),
status: 'Completed',
documentType: 'Catatan Harian',
accuracy: 96.8,
imageUrl: 'https://i.imgur.com/KqW6F9p.png',
extractedText:
'CATATAN HARIAN - KANDANG C\nOperator: Budi\n- Mortalitas: 12 ekor\n- Suhu maks: 32.1 C\n- Kelembaban min: 65%\n- Kipas menyala pukul 11:00 - 15:00',
},
{
id: 'ocr-4',
fileName: 'IMG_20250802_1530.jpg',
uploadedAt: new Date(Date.now() - 1 * 24 * 60 * 60 * 1000),
status: 'Processing',
documentType: 'Tidak Dikenal',
accuracy: 0,
imageUrl: 'https://i.imgur.com/7g2Cw2s.png',
extractedText: '',
},
{
id: 'ocr-5',
fileName: 'scan_faktur_pakan_0108.pdf',
uploadedAt: new Date(Date.now() - 2 * 24 * 60 * 60 * 1000),
status: 'Failed',
documentType: 'Faktur Pakan',
accuracy: 0,
imageUrl: 'https://i.imgur.com/rM2a3YV.png',
extractedText: 'Error: Dokumen tidak dapat dibaca, kualitas gambar terlalu rendah.',
},
];
export const initialOcrStats: OcrStats = {
processedToday: initialOcrDocuments.filter(
(d) => d.uploadedAt.toDateString() === new Date().toDateString()
).length,
avgAccuracy: 93.9,
needsReview: initialOcrDocuments.filter((d) => d.status === 'Needs Review').length,
};