From a98ab18423caf791e200eddce2ec5695bcdbcae6 Mon Sep 17 00:00:00 2001 From: bagasbanuna Date: Thu, 19 Feb 2026 16:44:17 +0800 Subject: [PATCH] Fix API Mobile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit API – Admin Forum & Investment - src/app/api/mobile/admin/forum/route.ts - src/app/api/mobile/admin/investment/route.ts - src/app/api/mobile/admin/investment/[id]/investor/route.ts Docs - PROMPT-AI.md ### No Issue --- PROMPT-AI.md | 2 +- src/app/api/mobile/admin/forum/route.ts | 3 ++- .../mobile/admin/investment/[id]/investor/route.ts | 14 ++++++++------ src/app/api/mobile/admin/investment/route.ts | 13 ++++++++----- 4 files changed, 19 insertions(+), 13 deletions(-) diff --git a/PROMPT-AI.md b/PROMPT-AI.md index 8798ce07..5b27b3fc 100644 --- a/PROMPT-AI.md +++ b/PROMPT-AI.md @@ -1,5 +1,5 @@ -File utama: src/app/api/mobile/admin/donation/[id]/donatur/route.ts +File utama: src/app/api/mobile/admin/investment/[id]/investor/route.ts Terapkan pagination pada file "File utama" pada method GET Analisa juga file "File utama", jika belum memiliki page dari seachParams maka terapkan. Juga pastikan take dan skip sudah sesuai dengan pagination. Buat default nya menjadi 10 untuk take data diff --git a/src/app/api/mobile/admin/forum/route.ts b/src/app/api/mobile/admin/forum/route.ts index 881ce3ae..a8e9119a 100644 --- a/src/app/api/mobile/admin/forum/route.ts +++ b/src/app/api/mobile/admin/forum/route.ts @@ -1,6 +1,7 @@ import { NextResponse } from "next/server"; import { prisma } from "@/lib"; import _ from "lodash"; +import { PAGINATION_DEFAULT_TAKE } from "@/lib/constans-value/constansValue"; export { GET }; @@ -9,7 +10,7 @@ async function GET(request: Request, { params }: { params: { name: string } }) { const category = searchParams.get("category"); const search = searchParams.get("search"); const page = searchParams.get("page"); - const takeData = 10; + const takeData = PAGINATION_DEFAULT_TAKE; const skipData = Number(page) * takeData - takeData; let fixData; diff --git a/src/app/api/mobile/admin/investment/[id]/investor/route.ts b/src/app/api/mobile/admin/investment/[id]/investor/route.ts index 7a5f0d45..0418258e 100644 --- a/src/app/api/mobile/admin/investment/[id]/investor/route.ts +++ b/src/app/api/mobile/admin/investment/[id]/investor/route.ts @@ -1,19 +1,20 @@ import _ from "lodash"; import { NextResponse } from "next/server"; import prisma from "@/lib/prisma"; +import { PAGINATION_DEFAULT_TAKE } from "@/lib/constans-value/constansValue"; export async function GET( request: Request, - { params }: { params: { id: string } } + { params }: { params: { id: string } }, ) { try { let fixData; const { id } = params; const { searchParams } = new URL(request.url); - const page = searchParams.get("page"); + const page = Number(searchParams.get("page")); const status = searchParams.get("status"); - const takeData = 10; - const skipData = Number(page) * takeData - takeData; + const takeData = PAGINATION_DEFAULT_TAKE; + const skipData = page * takeData - takeData; const fixStatus = _.startCase(status ? status : ""); @@ -43,6 +44,7 @@ export async function GET( id: true, Author: true, StatusInvoice: true, + nominal: true, }, }); @@ -54,7 +56,7 @@ export async function GET( message: "Success get status transaksi", data: fixData, }, - { status: 200 } + { status: 200 }, ); } catch (error) { console.error("Eror get status transaksi", error); @@ -64,7 +66,7 @@ export async function GET( message: "Error get status transaksi", reason: (error as Error).message, }, - { status: 500 } + { status: 500 }, ); } } diff --git a/src/app/api/mobile/admin/investment/route.ts b/src/app/api/mobile/admin/investment/route.ts index e0548821..bde32970 100644 --- a/src/app/api/mobile/admin/investment/route.ts +++ b/src/app/api/mobile/admin/investment/route.ts @@ -1,6 +1,7 @@ import _ from "lodash"; import { NextResponse } from "next/server"; import { prisma } from "@/lib"; +import { PAGINATION_DEFAULT_TAKE } from "@/lib/constans-value/constansValue"; export { GET }; @@ -9,12 +10,9 @@ async function GET(request: Request) { const category = searchParams.get("category"); const search = searchParams.get("search"); const page = searchParams.get("page"); - const takeData = 10; + const takeData = PAGINATION_DEFAULT_TAKE; const skipData = Number(page) * takeData - takeData; - console.log("[CATEGORY]", category); - console.log("[PAGE]", page); - let fixData; try { if (category === "dashboard") { @@ -49,7 +47,6 @@ async function GET(request: Request) { }; } else { const fixCategoryToStatus = _.startCase(category || ""); - console.log("[STATUS]", fixCategoryToStatus); const data = await prisma.investasi.findMany({ take: page ? takeData : undefined, @@ -70,6 +67,12 @@ async function GET(request: Request) { select: { id: true, title: true, + targetDana: true, + MasterPencarianInvestor: { + select: { + name: true, + }, + }, author: { select: { id: true,