Merge pull request #33 from bipproduction/portofolio/create

Portofolio/create
This commit is contained in:
Bagasbanuna02
2024-01-19 14:19:04 +08:00
committed by GitHub
382 changed files with 9069 additions and 2729 deletions

View File

@@ -24,6 +24,8 @@ model User {
Investasi Investasi[]
TransaksiInvestasi TransaksiInvestasi[]
Donasi Donasi[]
Donasi_Invoice Donasi_Invoice[]
Donasi_Notif Donasi_Notif[]
}
model MasterUserRole {
@@ -47,24 +49,27 @@ model UserSession {
}
model Profile {
id String @id @default(cuid())
name String
email String @unique
alamat String
jenisKelamin String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @default(now()) @updatedAt
User User? @relation(fields: [userId], references: [id])
userId String? @unique
ImageProfile Images? @relation(fields: [imagesId], references: [id])
imagesId String? @unique
Katalog Katalog[]
id String @id @default(cuid())
name String
email String @unique
alamat String
jenisKelamin String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @default(now()) @updatedAt
User User? @relation(fields: [userId], references: [id])
userId String? @unique
ImageProfile Images? @relation(fields: [imagesId], references: [id])
imagesId String? @unique
Portofolio Portofolio[]
ImagesBackground ImagesBackground? @relation(fields: [imagesBackgroundId], references: [id])
imagesBackgroundId String? @unique
}
model Images {
id String @id @default(cuid())
url String
label String @default("null")
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @default(now()) @updatedAt
@@ -74,30 +79,61 @@ model Images {
Donasi Donasi?
CeritaDonasi Donasi_Cerita[]
Donasi_TemporaryCreate Donasi_TemporaryCreate[]
Donasi_Kabar Donasi_Kabar[]
Donasi_PencairanDana Donasi_PencairanDana[]
Donasi_Invoice Donasi_Invoice[]
Portofolio Portofolio[]
}
model Katalog {
id String @id @default(cuid())
namaBisnis String
alamatKantor String
tlpn String
deskripsi String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @default(now()) @updatedAt
Profile Profile? @relation(fields: [profileId], references: [id])
profileId String?
MasterBidangBisnis MasterBidangBisnis @relation(fields: [masterBidangBisnisId], references: [id])
masterBidangBisnisId String
model ImagesBackground {
id String @id @default(cuid())
url String
label String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
Profile Profile?
}
model Portofolio {
id String @id @default(cuid())
namaBisnis String
alamatKantor String
tlpn String
deskripsi String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @default(now()) @updatedAt
Profile Profile? @relation(fields: [profileId], references: [id])
profileId String?
MasterBidangBisnis MasterBidangBisnis @relation(fields: [masterBidangBisnisId], references: [id])
masterBidangBisnisId String
Logo Images? @relation(fields: [logoId], references: [id])
logoId String?
Portofolio_MediaSosial Portofolio_MediaSosial?
}
model Portofolio_MediaSosial {
id String @id @default(cuid())
facebook String?
twitter String?
instagram String?
tiktok String?
youtube String?
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
Portofolio Portofolio? @relation(fields: [portofolioId], references: [id])
portofolioId String? @unique
}
model MasterBidangBisnis {
id String @id
name String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @default(now()) @updatedAt
Katalog Katalog[]
id String @id
name String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @default(now()) @updatedAt
Portofolio Portofolio[]
}
// -------------------- INVESTASI --------------------- //
@@ -272,16 +308,22 @@ model MasterStatusTransaksiInvestasi {
TransaksiInvestasi TransaksiInvestasi[]
}
// -------------------- DONASI --------------------- //
/// ---------------------------------------- DONASI ----------------------------------------- //
model Donasi {
id String @id @default(cuid())
title String
target String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
publishTime DateTime?
catatan String?
id String @id @default(cuid())
title String
target String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
publishTime DateTime?
catatan String?
progres String? @default("0")
terkumpul String? @default("0")
namaBank String?
rekening String?
akumulasiPencairan Int? @default(0)
totalPencairan Int? @default(0)
Author User? @relation(fields: [authorId], references: [id])
authorId String?
@@ -294,6 +336,9 @@ model Donasi {
donasiMaster_DurasiId String?
DonasiMaster_Status DonasiMaster_StatusDonasi? @relation(fields: [donasiMaster_StatusDonasiId], references: [id])
donasiMaster_StatusDonasiId String? @default("2")
Donasi_Invoice Donasi_Invoice[]
Donasi_Kabar Donasi_Kabar[]
Donasi_PencairanDana Donasi_PencairanDana[]
}
model Donasi_TemporaryCreate {
@@ -353,3 +398,83 @@ model DonasiMaster_StatusDonasi {
updatedAt DateTime @updatedAt
Donasi Donasi[]
}
model DonasiMaster_Bank {
id String @id @default(cuid())
name String
norek String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
Donasi_Invoice Donasi_Invoice[]
}
model DonasiMaster_StatusInvoice {
id String @id @default(cuid())
name String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
Donasi_Invoice Donasi_Invoice[]
}
model Donasi_Invoice {
id String @id @default(cuid())
nominal String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
Donasi Donasi? @relation(fields: [donasiId], references: [id])
donasiId String?
DonasiMaster_Bank DonasiMaster_Bank? @relation(fields: [donasiMaster_BankId], references: [id])
donasiMaster_BankId String?
DonasiMaster_StatusInvoice DonasiMaster_StatusInvoice? @relation(fields: [donasiMaster_StatusInvoiceId], references: [id])
donasiMaster_StatusInvoiceId String? @default("3")
Author User? @relation(fields: [authorId], references: [id])
authorId String?
Images Images? @relation(fields: [imagesId], references: [id])
imagesId String?
}
model Donasi_Kabar {
id String @id @default(cuid())
title String
deskripsi String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
Donasi Donasi? @relation(fields: [donasiId], references: [id])
donasiId String?
ImagesKabar Images? @relation(fields: [imagesId], references: [id])
imagesId String?
Donasi_Notif Donasi_Notif[]
}
model Donasi_Notif {
id String @id @default(cuid())
isRead Boolean @default(false)
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
User User? @relation(fields: [userId], references: [id])
userId String?
Donasi_Kabar Donasi_Kabar? @relation(fields: [donasi_KabarId], references: [id])
donasi_KabarId String?
}
model Donasi_PencairanDana {
id String @id @default(cuid())
nominalCair Int
title String
deskripsi String
active Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
Donasi Donasi? @relation(fields: [donasiId], references: [id])
donasiId String?
Images Images? @relation(fields: [imagesId], references: [id])
imagesId String?
}

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

@@ -0,0 +1 @@
# Test

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

View File

@@ -0,0 +1,32 @@
import prisma from "@/app/lib/prisma";
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { id: string } }
) {
const get = await prisma.images.findUnique({
where: {
id: params.id,
},
select: {
url: true,
},
});
if (!fs.existsSync(`./public/donasi/invoice/${get?.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/no_img.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/donasi/invoice/${get?.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -0,0 +1,34 @@
import prisma from "@/app/lib/prisma";
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { id: string } }
) {
const get = await prisma.images.findUnique({
where: {
id: params.id,
},
select: {
url: true,
},
});
if (!fs.existsSync(`./public/donasi/kabar/${get?.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/no_img.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/donasi/kabar/${get?.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -0,0 +1,34 @@
import prisma from "@/app/lib/prisma";
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { id: string } }
) {
const get = await prisma.images.findUnique({
where: {
id: params.id,
},
select: {
url: true,
},
});
if (!fs.existsSync(`./public/donasi/pencairan/${get?.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/no_img.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/donasi/pencairan/${get?.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -0,0 +1,32 @@
import prisma from "@/app/lib/prisma";
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { id: string } }
) {
const get = await prisma.images.findUnique({
where: {
id: params.id,
},
select: {
url: true,
},
});
if (!fs.existsSync(`./public/portofolio/logo/${get?.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/no_img.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/portofolio/logo/${get?.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -0,0 +1,32 @@
import prisma from "@/app/lib/prisma";
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { id: string } }
) {
const get = await prisma.imagesBackground.findUnique({
where: {
id: params.id,
},
select: {
url: true,
},
});
if (!fs.existsSync(`./public/profile/background/${get?.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/no_img.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/profile/background/${get?.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -0,0 +1,32 @@
import prisma from "@/app/lib/prisma";
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { id: string } }
) {
const get = await prisma.images.findUnique({
where: {
id: params.id,
},
select: {
url: true,
},
});
if (!fs.existsSync(`./public/profile/foto/${get?.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/avatar.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/profile/foto/${get?.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -1,22 +0,0 @@
import { NextRequest, NextResponse } from "next/server";
import fs from "fs";
export async function GET(
req: NextRequest,
{ params }: { params: { name: string } }
) {
if (!fs.existsSync(`./public/img/${params.name}`)) {
const fl = fs.readFileSync(`./public/aset/avatar.png`);
return new NextResponse(fl, {
headers: {
"Content-Type": "image/png",
},
});
}
const fl = fs.readFileSync(`./public/img/${params.name}`);
return new NextResponse(fl, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -0,0 +1,23 @@
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { url: string } }
) {
if (!fs.existsSync(`./public/profile/background/${params.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/no_img.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/profile/background/${params.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -0,0 +1,23 @@
import fs from "fs";
import { NextRequest, NextResponse } from "next/server";
export async function GET(
req: NextRequest,
{ params }: { params: { url: string } }
) {
if (!fs.existsSync(`./public/profile/foto/${params.url}`)) {
const notFile = fs.readFileSync("./public/aset/global/avatar.png");
return new NextResponse(notFile, {
headers: {
"Content-Type": "image/png",
},
});
}
const file = fs.readFileSync(`./public/profile/foto/${params.url}`);
return new NextResponse(file, {
headers: {
"Content-Type": "image/png",
},
});
}

View File

@@ -13,6 +13,8 @@ import userSeeder from "../../../bin/seeder/user_seeder.json";
import donasi_status from "../../../bin/seeder/donasi/master_status.json";
import donasi_kategori from "../../../bin/seeder/donasi/master_kategori.json";
import donasi_durasi from "../../../bin/seeder/donasi/master_durasi.json";
import donasi_namaBank from "../../../bin/seeder/donasi/master_bank.json"
import donasi_status_invoice from "../../../bin/seeder/donasi/master_status_invoice.json"
export async function GET(req: Request) {
const dev = new URL(req.url).searchParams.get("dev");
@@ -229,6 +231,39 @@ export async function GET(req: Request) {
});
}
for (let i of donasi_namaBank) {
await prisma.donasiMaster_Bank.upsert({
where: {
id: i.id,
},
create: {
id: i.id,
name: i.name,
norek: i.norek,
},
update: {
id: i.id,
name: i.name,
norek: i.norek,
},
});
}
for (let d of donasi_status_invoice) {
await prisma.donasiMaster_StatusInvoice.upsert({
where: {
id: d.id,
},
create: {
id: d.id,
name: d.name,
},
update: {
name: d.name,
},
});
}
return NextResponse.json({ success: true });
}

View File

@@ -0,0 +1,24 @@
import { AdminDonasi_DetailPublish } from "@/app_modules/admin/donasi";
import { AdminDonasi_funCountDonatur } from "@/app_modules/admin/donasi/fun/count/fun_count_donatur";
import { AdminDonasi_getListDonatur } from "@/app_modules/admin/donasi/fun/get/get_list_donatur_by_id";
import { AdminDonasi_getListPencairanDana } from "@/app_modules/admin/donasi/fun/get/get_list_pencairan_dana_by_id";
import { AdminDonasi_getOneById } from "@/app_modules/admin/donasi/fun/get/get_one_by_id";
export default async function Page({ params }: { params: { id: string } }) {
const dataPublish = await AdminDonasi_getOneById(params.id);
const listDonatur = await AdminDonasi_getListDonatur(params.id);
const countDonatur = await AdminDonasi_funCountDonatur(params.id);
const listPencairan = await AdminDonasi_getListPencairanDana(params.id);
// console.log(listDonatur)
return (
<>
<AdminDonasi_DetailPublish
dataPublish={dataPublish as any}
listDonatur={listDonatur}
countDonatur={countDonatur}
listPencairan={listPencairan as any}
/>
</>
);
}

View File

@@ -1,9 +0,0 @@
import { AdminDonasi_DetailPublish } from "@/app_modules/admin/donasi";
export default async function Page() {
return (
<>
<AdminDonasi_DetailPublish />
</>
);
}

View File

@@ -0,0 +1,12 @@
import { AdminDonasi_DetailReject } from "@/app_modules/admin/donasi";
import { AdminDonasi_getOneById } from "@/app_modules/admin/donasi/fun/get/get_one_by_id";
export default async function Page({ params }: { params: { id: string } }) {
const dataReject = await AdminDonasi_getOneById(params.id);
return (
<>
<AdminDonasi_DetailReject dataReject={dataReject as any} />
</>
);
}

View File

@@ -1,9 +1,9 @@
import { AdminDonasi_DetailReview } from "@/app_modules/admin/donasi";
import { AdminDonasi_getById } from "@/app_modules/admin/donasi/fun/get/get_one_by_id";
import { AdminDonasi_getOneById } from "@/app_modules/admin/donasi/fun/get/get_one_by_id";
export default async function Page({params}: {params: {id: string}}) {
// console.log(params.id)
const dataReview = await AdminDonasi_getById(params.id)
const dataReview = await AdminDonasi_getOneById(params.id)
// console.log(dataReview)
return <AdminDonasi_DetailReview dataReview={dataReview as any}/>
}

View File

@@ -0,0 +1,6 @@
import { AdminDonasi_PencairanDana } from "@/app_modules/admin/donasi";
export default async function Page({ params }: { params: { id: string } }) {
let donasiId = params.id;
return <AdminDonasi_PencairanDana donasiId={donasiId} />;
}

View File

@@ -0,0 +1,12 @@
import { AdminDonasi_ProsesTransaksi } from "@/app_modules/admin/donasi";
import { AdminDonasi_getListStatusInvoiceProses } from "@/app_modules/admin/donasi/fun/get/get_list_status_invoice_proses";
export default async function Page({params}: {params: {id: string}}) {
let donasiId = params.id
const listProses = await AdminDonasi_getListStatusInvoiceProses(donasiId)
return <AdminDonasi_ProsesTransaksi listProses={listProses as any}/>
}

View File

@@ -1,5 +1,5 @@
import { AdminDonasi_TablePublish } from "@/app_modules/admin/donasi";
import { AdminDonasi_getByStatus } from "@/app_modules/admin/donasi/fun/get/get_donasi_by_status";
import { AdminDonasi_getByStatus } from "@/app_modules/admin/donasi/fun/get/get_list_donasi_by_status";
export default async function Page() {
const listPublish = await AdminDonasi_getByStatus("1")

View File

@@ -1,5 +1,5 @@
import { AdminDonasi_TableReject } from "@/app_modules/admin/donasi";
import { AdminDonasi_getByStatus } from "@/app_modules/admin/donasi/fun/get/get_donasi_by_status";
import { AdminDonasi_getByStatus } from "@/app_modules/admin/donasi/fun/get/get_list_donasi_by_status";
export default async function Page() {
const dataReject = await AdminDonasi_getByStatus("4")

View File

@@ -1,6 +1,6 @@
import { AdminDonasi_TableReview } from "@/app_modules/admin/donasi";
import { AdminDonasi_getByStatus } from "@/app_modules/admin/donasi/fun/get/get_donasi_by_status";
import { getToken_UserId } from "@/app_modules/fun/get_user_token";
import { AdminDonasi_getByStatus } from "@/app_modules/admin/donasi/fun/get/get_list_donasi_by_status";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page() {
const listReview = await AdminDonasi_getByStatus("2");

View File

@@ -1,5 +1,5 @@
import { Admin_KonfirmasiInvestasi } from "@/app_modules/admin/investasi";
import { funGetUserProfile } from "@/app_modules/fun/get_user_profile";
import { funGetUserProfile } from "@/app_modules/fun_global/get_user_profile";
import getOneInvestasiById from "@/app_modules/investasi/fun/get_one_investasi_by_id";

View File

@@ -13,7 +13,7 @@ export default async function Layout({
const statusDonasiId = dataDonasi?.donasiMaster_StatusDonasiId;
return (
<>
<LayoutCeritaPenggalangDonasi statusDonasiId={statusDonasiId as string}>
<LayoutCeritaPenggalangDonasi statusDonasiId={statusDonasiId as string} donasiId={dataDonasi?.id as string}>
{children}
</LayoutCeritaPenggalangDonasi>
</>

View File

@@ -1,12 +1,12 @@
import { CreateCeritaPenggalangDonasi } from "@/app_modules/donasi";
import { Donasi_getTemporaryCreate } from "@/app_modules/donasi/fun/get/get_temporary_create";
import { getToken_UserId } from "@/app_modules/fun/get_user_token";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
const getTemporaryCreate = await Donasi_getTemporaryCreate(params.id);
const userId = await getToken_UserId()
const userId = await User_getUserId()
return (
<>

View File

@@ -0,0 +1,14 @@
import { LayoutCreateDonasi } from "@/app_modules/donasi";
import React from "react";
export default async function Layout({
children,
}: {
children: React.ReactNode;
}) {
return (
<>
<LayoutCreateDonasi>{children}</LayoutCreateDonasi>
</>
);
}

View File

@@ -3,7 +3,7 @@ import {
Donasi_getMasterDurasi,
Donasi_getMasterKategori,
} from "@/app_modules/donasi/fun";
import { getToken_UserId } from "@/app_modules/fun/get_user_token";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page() {
const masterKategori = await Donasi_getMasterKategori();

View File

@@ -0,0 +1,14 @@
import { LayoutDonasi_CreateKabar } from "@/app_modules/donasi";
import React from "react";
export default async function Layout({
children,
}: {
children: React.ReactNode;
}) {
return (
<>
<LayoutDonasi_CreateKabar>{children}</LayoutDonasi_CreateKabar>
</>
);
}

View File

@@ -0,0 +1,8 @@
import { Donasi_CreateKabar } from "@/app_modules/donasi";
export default async function Page({params}: {params: {id: string}}) {
const donasiId = params.id
return<>
<Donasi_CreateKabar donasiId={donasiId}/>
</>
}

View File

@@ -0,0 +1,18 @@
import { DetailDonasiSaya } from "@/app_modules/donasi";
import { Donasi_getCountDonatur } from "@/app_modules/donasi/fun/count/get_count_donatur";
import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id";
import { Donasi_getOneInvoiceById } from "@/app_modules/donasi/fun/get/get_one_invoice_by_id";
export default async function Page({ params }: { params: { id: string } }) {
let invoiceId = params.id;
const dataDonasi = await Donasi_getOneInvoiceById(invoiceId);
const countDonatur= await Donasi_getCountDonatur(dataDonasi?.donasiId as any)
console.log(dataDonasi?.Donasi?.progres)
return (
<>
<DetailDonasiSaya dataDonasi={dataDonasi as any} countDonatur={countDonatur} />
</>
);
}

View File

@@ -1,7 +0,0 @@
import { DetailDonasiSaya } from "@/app_modules/donasi";
export default async function Page() {
return<>
<DetailDonasiSaya/>
</>
}

View File

@@ -0,0 +1,10 @@
import { DetailKabarDonasi } from "@/app_modules/donasi";
import { Donasi_getOneKabar } from "@/app_modules/donasi/fun/get/get_one_kabar";
export default async function Page({params}: {params: {id: string}}) {
let kabarId = params.id
const dataDonasi = await Donasi_getOneKabar(kabarId)
return <DetailKabarDonasi dataDonasi={dataDonasi as any}/>
}

View File

@@ -1,5 +0,0 @@
import { DetailKabarDonasi } from "@/app_modules/donasi";
export default async function Page() {
return <DetailKabarDonasi/>
}

View File

@@ -3,12 +3,14 @@ import React from "react";
export default async function Layout({
children,
params
}: {
children: React.ReactNode;
params: {id: string}
}) {
return (
<>
<LayoutDetailMainDonasi>{children}</LayoutDetailMainDonasi>
<LayoutDetailMainDonasi donasiId={params.id}>{children}</LayoutDetailMainDonasi>
</>
);
}

View File

@@ -0,0 +1,17 @@
import { DetailMainDonasi } from "@/app_modules/donasi";
import { Donasi_getCountDonatur } from "@/app_modules/donasi/fun/count/get_count_donatur";
import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
let donasiId = params.id;
const dataDonasi = await Donasi_getOneById(donasiId);
const countDonatur = await Donasi_getCountDonatur(donasiId)
const userLoginId = await User_getUserId();
return (
<>
<DetailMainDonasi dataDonasi={dataDonasi as any} countDonatur={countDonatur} userLoginId={userLoginId}/>
</>
);
}

View File

@@ -1,9 +0,0 @@
import { DetailMainDonasi } from "@/app_modules/donasi";
export default async function Page() {
return (
<>
<DetailMainDonasi />
</>
);
}

View File

@@ -0,0 +1,22 @@
import prisma from "@/app/lib/prisma";
import { LayoutDonasi_DetailNotif } from "@/app_modules/donasi";
import { Donasi_getOneKabar } from "@/app_modules/donasi/fun/get/get_one_kabar";
import React from "react";
export default async function Layout({
children,
params,
}: {
children: React.ReactNode;
params: { id: string };
}) {
let kabarId = params.id;
const dataKabar = await Donasi_getOneKabar(kabarId);
const donasiId = dataKabar?.donasiId
return (
<>
<LayoutDonasi_DetailNotif donasiId={donasiId as any}>{children}</LayoutDonasi_DetailNotif>
</>
);
}

View File

@@ -0,0 +1,9 @@
import { Donasi_DetailNotif } from "@/app_modules/donasi";
import { Donasi_getOneKabar } from "@/app_modules/donasi/fun/get/get_one_kabar";
export default async function Page({ params }: { params: { id: string } }) {
let kabarId = params.id;
const dataKabar = await Donasi_getOneKabar(kabarId);
return <Donasi_DetailNotif dataKabar={dataKabar as any} />;
}

View File

@@ -3,12 +3,16 @@ import React from "react";
export default async function Layout({
children,
params,
}: {
children: React.ReactNode;
params: { id: string };
}) {
return (
<>
<LayoutDetailPublishDonasi>{children}</LayoutDetailPublishDonasi>
<LayoutDetailPublishDonasi donasiId={params.id}>
{children}
</LayoutDetailPublishDonasi>
</>
);
}

View File

@@ -0,0 +1,18 @@
import { DetailPublishDonasi } from "@/app_modules/donasi";
import { Donasi_getCountDonatur } from "@/app_modules/donasi/fun/count/get_count_donatur";
import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
const dataPublish = await Donasi_getOneById(params.id);
const countDonatur= await Donasi_getCountDonatur(params.id)
const userLoginId = await User_getUserId();
console.log(userLoginId)
return (
<>
<DetailPublishDonasi dataPublish={dataPublish as any} countDonatur={countDonatur} userLoginId={userLoginId}/>
</>
);
}

View File

@@ -1,7 +0,0 @@
import { DetailPublishDonasi } from "@/app_modules/donasi";
export default async function Page() {
return<>
<DetailPublishDonasi/>
</>
}

View File

@@ -0,0 +1,11 @@
import { DetailRejectDonasi } from "@/app_modules/donasi";
import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id";
export default async function Page({params}: {params: {id: string}}) {
let donasiId= params.id
const dataReject = await Donasi_getOneById(donasiId)
return<>
<DetailRejectDonasi dataReject={dataReject as any}/>
</>
}

View File

@@ -1,7 +0,0 @@
import { DetailRejectDonasi } from "@/app_modules/donasi";
export default async function Page() {
return<>
<DetailRejectDonasi/>
</>
}

View File

@@ -0,0 +1,12 @@
import { DonaturDonasi } from "@/app_modules/donasi";
import { Donasi_getListDonatur } from "@/app_modules/donasi/fun/get/get_list_donatur";
export default async function Page({ params }: { params: { id: string } }) {
const listDonatur = await Donasi_getListDonatur(params.id);
return (
<>
<DonaturDonasi listDonatur={listDonatur as any} />
</>
);
}

View File

@@ -1,8 +0,0 @@
import { DonaturDonasi } from "@/app_modules/donasi";
export default async function Page() {
return<>
<DonaturDonasi/>
</>
}

View File

@@ -0,0 +1,14 @@
import { LayoutDonasi_EditRekening } from "@/app_modules/donasi";
import React from "react";
export default async function Layout({
children,
}: {
children: React.ReactNode;
}) {
return (
<>
<LayoutDonasi_EditRekening>{children}</LayoutDonasi_EditRekening>
</>
);
}

View File

@@ -0,0 +1,17 @@
import { Donasi_EditRekening } from "@/app_modules/donasi";
import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id";
export default async function Page({ params }: { params: { id: string } }) {
let donasiId = params.id;
const data = await Donasi_getOneById(donasiId);
const dataDonasi = {
id: data?.id,
namaBank: data?.namaBank,
rekening: data?.rekening,
};
return (
<>
<Donasi_EditRekening dataDonasi={dataDonasi as any} />
</>
);
}

View File

@@ -3,12 +3,14 @@ import React from "react";
export default async function Layout({
children,
params
}: {
children: React.ReactNode;
params: {id: string}
}) {
return (
<>
<LayoutUpdateKabarDonasi>{children}</LayoutUpdateKabarDonasi>
<LayoutUpdateKabarDonasi kabarId={params.id}>{children}</LayoutUpdateKabarDonasi>
</>
);
}

View File

@@ -0,0 +1,11 @@
import { UpdateKabarDonasi } from "@/app_modules/donasi";
import { Donasi_getOneKabar } from "@/app_modules/donasi/fun/get/get_one_kabar";
export default async function Page({params}: {params: {id: string}}) {
let kabarId = params.id
const dataKabar = await Donasi_getOneKabar(kabarId)
return<>
<UpdateKabarDonasi dataKabar={dataKabar as any}/>
</>
}

View File

@@ -1,7 +0,0 @@
import { UpdateKabarDonasi } from "@/app_modules/donasi";
export default async function Page() {
return<>
<UpdateKabarDonasi/>
</>
}

View File

@@ -0,0 +1,13 @@
import { KabarDonasi } from "@/app_modules/donasi";
import { Donasi_getListKabar } from "@/app_modules/donasi/fun/get/get_list_kabar";
export default async function Page({params}: {params: {id: string}}) {
const donasiId = params.id
const listKabar = await Donasi_getListKabar(donasiId)
return (
<>
<KabarDonasi listKabar={listKabar as any} />
</>
);
}

View File

@@ -1,9 +0,0 @@
import { KabarDonasi } from "@/app_modules/donasi";
export default async function Page() {
return (
<>
<KabarDonasi />
</>
);
}

View File

@@ -3,8 +3,10 @@ import React from "react";
export default async function Layput({
children,
params
}: {
children: React.ReactNode;
params: {id: string}
}) {
return (
<>

View File

@@ -0,0 +1,13 @@
import { ListKabarDonasi } from "@/app_modules/donasi";
import { Donasi_getListKabar } from "@/app_modules/donasi/fun/get/get_list_kabar";
export default async function Page({params}: {params: {id: string}}) {
const donasiId = params.id
const listKabar = await Donasi_getListKabar(donasiId)
return (
<>
<ListKabarDonasi donasiId={donasiId} listKabar={listKabar as any} />
</>
);
}

View File

@@ -1,9 +0,0 @@
import { ListKabarDonasi } from "@/app_modules/donasi";
export default async function Page() {
return (
<>
<ListKabarDonasi />
</>
);
}

View File

@@ -1,5 +1,8 @@
import { MainDonasi } from "@/app_modules/donasi";
import { Donasi_getListBeranda } from "@/app_modules/donasi/fun/get/get_list_beranda";
export default async function Page() {
return <MainDonasi/>
const listDonasi = await Donasi_getListBeranda()
// console.log(listDonasi)
return <MainDonasi listDonasi={listDonasi as any}/>
}

View File

@@ -1,5 +1,10 @@
import { DonasiSayaDonasi } from "@/app_modules/donasi";
import { Donasi_getInvoiceByAuthorId } from "@/app_modules/donasi/fun/get/get_list_invoice_by_author_id";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page() {
return <DonasiSayaDonasi/>
}
const authorId = await User_getUserId();
const listInvoice = await Donasi_getInvoiceByAuthorId(authorId);
return <DonasiSayaDonasi listInvoice={listInvoice as any} />;
}

View File

@@ -1,17 +1,19 @@
import { PostingDonasi } from "@/app_modules/donasi";
import Donasi_getByStatus from "@/app_modules/donasi/fun/get/get_donasi_by_status";
import { getToken_UserId } from "@/app_modules/fun/get_user_token";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page() {
const authorId = await getToken_UserId();
const authorId = await User_getUserId();
const listPublish = await Donasi_getByStatus(authorId, "1")
const listReview = await Donasi_getByStatus(authorId, "2");
const listDraft = await Donasi_getByStatus(authorId, "3");
const listReject = await Donasi_getByStatus(authorId, "4")
// console.log(listReview)
return (
<>
<PostingDonasi listReview={listReview} listDraft={listDraft} />
<PostingDonasi listPublish={listPublish} listReview={listReview} listDraft={listDraft} listReject={listReject} />
</>
);
}

View File

@@ -1,8 +1,23 @@
import { LayoutDonasi } from "@/app_modules/donasi";
import { Donasi_getNotifByUserId } from "@/app_modules/donasi/fun/get/get_notif_by_user_id";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
import React from "react";
export default async function Layout({children}: {children: React.ReactNode}) {
return <>
<LayoutDonasi>{children}</LayoutDonasi>
export default async function Layout({
children,
}: {
children: React.ReactNode;
}) {
const userId = await User_getUserId();
// const dataDonasi = await DOnasi_getList
const isRead = await Donasi_getNotifByUserId(userId).then((res) => res.map((val) => val.isRead))
// console.log(isRead)
return (
<>
<LayoutDonasi userId={userId} isRead={isRead as any}>
{children}
</LayoutDonasi>
</>
}
);
}

View File

@@ -1,5 +0,0 @@
import { MasukanDonasi } from "@/app_modules/donasi";
export default async function Page() {
return <MasukanDonasi/>
}

View File

@@ -0,0 +1,8 @@
import { LayoutDonasi_NotifPage } from "@/app_modules/donasi";
import React from "react";
export default async function Layout({children}: {children: React.ReactNode}) {
return<>
<LayoutDonasi_NotifPage>{children}</LayoutDonasi_NotifPage>
</>
}

View File

@@ -0,0 +1,14 @@
import { Donasi_NotifPage } from "@/app_modules/donasi";
import { Donasi_getNotifByUserId } from "@/app_modules/donasi/fun/get/get_notif_by_user_id";
export default async function Page({ params }: { params: { id: string } }) {
let userId = params.id;
const dataNotif = await Donasi_getNotifByUserId(userId);
// console.log(dataNotif)
return (
<>
<Donasi_NotifPage dataNotif={dataNotif as any} />
</>
);
}

View File

@@ -0,0 +1,24 @@
import { PencairanDanaDonasi } from "@/app_modules/donasi";
import { NotifPeringatan } from "@/app_modules/donasi/component/notifikasi/notif_peringatan";
import { Donasi_getListPencairanDanaById } from "@/app_modules/donasi/fun/get/get_list_pencairan_dana_by_id";
import { Donasi_getTotalPencairanDanaById } from "@/app_modules/donasi/fun/get/get_pencairan_dana_by_id";
import { User_getUserId } from "@/app_modules/fun_global/get_user_token";
import { Loader } from "@mantine/core";
export default async function Page({ params }: { params: { id: string } }) {
let donasiId = params.id;
const totalAkumulasi = await Donasi_getTotalPencairanDanaById(donasiId);
const listPencairan = await Donasi_getListPencairanDanaById(donasiId);
// if (authorId != totalAkumulasi?.authorId) return <><NotifPeringatan /></>
return (
<>
<PencairanDanaDonasi
totalAkumulasi={totalAkumulasi as any}
listPencairan={listPencairan as any}
/>
</>
);
}

View File

@@ -1,9 +0,0 @@
import { PencairanDanaDonasi } from "@/app_modules/donasi";
export default async function Page() {
return (
<>
<PencairanDanaDonasi />
</>
);
}

View File

@@ -0,0 +1,14 @@
import { PenggalangDanaDonasi } from "@/app_modules/donasi";
import { Donasi_getAuthorById } from "@/app_modules/donasi/fun/get/get_author_by_id";
export default async function Page({ params }: { params: { id: string } }) {
let authorId = params.id;
const dataPenggalang = await Donasi_getAuthorById(authorId);
return (
<>
<PenggalangDanaDonasi dataPenggalang={dataPenggalang as any} />
</>
);
}

View File

@@ -1,10 +0,0 @@
import { PenggalangDanaDonasi } from "@/app_modules/donasi";
export default async function Page() {
return (
<>
<PenggalangDanaDonasi />
</>
);
}

View File

@@ -0,0 +1,8 @@
import { LayoutDonasi_InvoiceProses } from "@/app_modules/donasi";
import React from "react";
export default async function Layout({children}: {children: React.ReactNode}) {
return<>
<LayoutDonasi_InvoiceProses>{children}</LayoutDonasi_InvoiceProses>
</>
}

Some files were not shown because too many files have changed in this diff Show More