Create dan Update

# feat
- tampilan user
- tampilan admin
## No Issue
This commit is contained in:
2024-01-02 16:35:55 +08:00
parent f02e907bc5
commit 4fc158bdc5
92 changed files with 2357 additions and 851 deletions

View File

@@ -0,0 +1,28 @@
"use server";
import prisma from "@/app/lib/prisma";
import { RouterDonasi } from "@/app/lib/router_hipmi/router_donasi";
import { revalidatePath } from "next/cache";
export async function Donasi_funGantiStatus(
donasiId: string,
statusId: string
) {
const data = await prisma.donasi.update({
where: {
id: donasiId,
},
data: {
donasiMaster_StatusDonasiId: statusId,
},
});
if (!data) return { status: 400, message: "Data tidak ditemukan" };
revalidatePath(RouterDonasi.main_galang_dana)
return {
status: 200,
message: "Status berhasil diganti",
};
}

View File

@@ -0,0 +1,59 @@
"use server";
import _ from "lodash";
import { MODEL_CERITA_DONASI } from "../../model/interface";
import { v4 } from "uuid";
import prisma from "@/app/lib/prisma";
import { revalidatePath } from "next/cache";
import fs from "fs";
export async function Donasi_funUpdateCerita(
data: MODEL_CERITA_DONASI,
file: FormData
) {
const gambar: any = file.get("file");
if (gambar !== "null") {
const fileName = gambar.name;
const fileExtension = _.lowerCase(gambar.name.split(".").pop());
const fileRandomName = v4(fileName) + "." + fileExtension;
const updateGambar = await prisma.images.update({
where: {
id: data.imagesId,
},
data: {
url: fileRandomName,
},
});
if (!updateGambar) return { status: 400, message: "Update gambat gagal" };
revalidatePath("/dev/donasi/detail/detail_draft");
const uploadFolder = Buffer.from(await gambar.arrayBuffer());
fs.writeFileSync(
`./public/donasi/image_cerita/${updateGambar.url}`,
uploadFolder
);
}
const update = await prisma.donasi_Cerita.update({
where: {
id: data.id,
},
data: {
pembukaan: data.pembukaan,
cerita: data.cerita,
},
});
if (!update) return { status: 400, message: "Gagal update cerita" };
revalidatePath("/dev/donasi/detail/detail_draft");
return {
status: 200,
message: "Berhasil update cerita",
};
}

View File

@@ -0,0 +1,71 @@
"use server";
import prisma from "@/app/lib/prisma";
import { MODEL_DONASI } from "../../model/interface";
import _ from "lodash";
import { v4 } from "uuid";
import fs from "fs";
import { revalidatePath, revalidateTag } from "next/cache";
import { RouterDonasi } from "@/app/lib/router_hipmi/router_donasi";
export async function Donasi_funUpdateDonasi(
data: MODEL_DONASI,
file: FormData
) {
// console.log(data);
const gambar: any = file.get("file");
if (gambar !== "null") {
const fileName = gambar.name;
const fileExtension = _.lowerCase(gambar.name.split(".").pop());
const fileRandomName = v4(fileName) + "." + fileExtension;
const cariGambar = await prisma.images.findFirst({
where: {
id: data.imagesId,
},
select: {
url: true,
},
});
if (!cariGambar) return { status: 400, message: "Gambar tidak ditemukan" };
revalidatePath("/dev/donasi/detail/detail_draft");
fs.unlinkSync(`./public/donasi/image/${cariGambar.url}`);
const updateGambar = await prisma.images.update({
where: {
id: data.imagesId,
},
data: {
url: fileRandomName,
},
});
if (!updateGambar) return { status: 400, message: "Update gambat gagal" };
revalidatePath("/dev/donasi/detail/detail_draft");
const uploadFolder = Buffer.from(await gambar.arrayBuffer());
fs.writeFileSync(`./public/donasi/image/${updateGambar.url}`, uploadFolder);
}
const update = await prisma.donasi.update({
where: {
id: data.id,
},
data: {
donasiMaster_KategoriId: data.donasiMaster_KategoriId,
donasiMaster_DurasiId: data.donasiMaster_DurasiId,
title: data.title,
target: data.target,
},
});
if (!update) return { status: 400, message: "Gagal update" };
revalidatePath("/dev/donasi/detail/detail_draft");
return {
status: 200,
message: "Berhasil update",
};
}