From 357611bd50b186f2f2defcd021bfa0f2a88ec3b2 Mon Sep 17 00:00:00 2001 From: muhamad fais aizat Date: Sat, 3 May 2025 14:59:05 +0700 Subject: [PATCH] feat:menambahkan buttton di hasil prediksi dan memperbaiki button di testing --- frontend/src/pages/Panel/Result/Result.jsx | 21 +++++++++++++++++++ .../pages/Panel/TestingSVR/HasilPrediksi.jsx | 4 ++-- .../pages/Panel/TestingSVR/Preprocessing.jsx | 2 +- 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/frontend/src/pages/Panel/Result/Result.jsx b/frontend/src/pages/Panel/Result/Result.jsx index c6cf36fa..cb4622b5 100644 --- a/frontend/src/pages/Panel/Result/Result.jsx +++ b/frontend/src/pages/Panel/Result/Result.jsx @@ -1,6 +1,7 @@ import React, { useState, useEffect } from "react"; import { SearchNormal1 } from "iconsax-react"; import { Input } from "@/components/ui/input"; +import { Button } from '@/components/ui/button' import { Table, TableBody, @@ -21,6 +22,8 @@ import { import { ScrollArea, ScrollBar } from "@/components/ui/scroll-area"; import axios from 'axios'; import { API_URL } from "../../../helpers/networt"; +import * as XLSX from 'xlsx'; +import { saveAs } from 'file-saver'; @@ -65,11 +68,27 @@ const Result = () => { const endIndex = startIndex + ITEMS_PER_PAGE; const currentData = filteredData.slice(startIndex, endIndex); + const unduhExcel = () => { + if (dataHarga.length === 0) { + alert("Tidak ada data untuk diunduh."); + return; + } + + const worksheet = XLSX.utils.json_to_sheet(dataHarga); + const workbook = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(workbook, worksheet, "Data Harga"); + + const excelBuffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" }); + const data = new Blob([excelBuffer], { type: "application/octet-stream" }); + saveAs(data, "hasil_prediksi_seluruh_data_harga_tomat.xlsx"); + }; + return (
{/* Header */}

Hasil Harga Prediksi

+
{ }} />
+ +
{/* Table Container */} diff --git a/frontend/src/pages/Panel/TestingSVR/HasilPrediksi.jsx b/frontend/src/pages/Panel/TestingSVR/HasilPrediksi.jsx index 0a062edf..1afad4f6 100644 --- a/frontend/src/pages/Panel/TestingSVR/HasilPrediksi.jsx +++ b/frontend/src/pages/Panel/TestingSVR/HasilPrediksi.jsx @@ -76,7 +76,7 @@ const HasilPrediksi = ({ result }) => {

Hasil memprediksi Harga

Berikut hasil prediksi terhadap data uji:

-
+
{ }} />
- +
diff --git a/frontend/src/pages/Panel/TestingSVR/Preprocessing.jsx b/frontend/src/pages/Panel/TestingSVR/Preprocessing.jsx index 4fa98f6a..54dc1262 100644 --- a/frontend/src/pages/Panel/TestingSVR/Preprocessing.jsx +++ b/frontend/src/pages/Panel/TestingSVR/Preprocessing.jsx @@ -81,7 +81,7 @@ const Preprocessing = ({ result }) => {

Preprocessing

Tahap ini dilakukan untuk mengubah kolom angka menjadi tipe numerik, menghapus nilai yang kosong, mengubah format tanggal menjadi format date time, menambahkan fitur baru Harga 2Hari Lalu sebagai tambahan informasi historis.

-
+