Deskripsi: - Upload gambar investasi ke storage wibu - Upload bukti transfer ke storage wibu # No Issue
67 lines
1.7 KiB
TypeScript
67 lines
1.7 KiB
TypeScript
"use server";
|
|
|
|
import prisma from "@/app/lib/prisma";
|
|
import { MODEL_INVESTASI } from "../_lib/interface";
|
|
import _ from "lodash";
|
|
import { v4 } from "uuid";
|
|
import fs from "fs";
|
|
import { revalidatePath } from "next/cache";
|
|
import { RouterInvestasi_OLD } from "@/app/lib/router_hipmi/router_investasi";
|
|
|
|
export default async function funEditInvestasi(
|
|
formData: FormData,
|
|
data: MODEL_INVESTASI
|
|
) {
|
|
const file = formData?.get("file");
|
|
|
|
if (file !== "null") {
|
|
const file: any = formData?.get("file");
|
|
const fName = file.name;
|
|
const fExt =
|
|
file && file.name ? _.lowerCase(file.name.split(".").pop()) : "";
|
|
const fRandomName = v4(fName) + "." + fExt;
|
|
|
|
const updateImage = await prisma.images.update({
|
|
where: {
|
|
id: data.imagesId,
|
|
},
|
|
data: {
|
|
url: fRandomName,
|
|
},
|
|
});
|
|
|
|
if (!updateImage) return { status: 400, message: "Gagal upload gambar" };
|
|
const upFolder : any = Buffer.from(await file.arrayBuffer());
|
|
fs.writeFileSync(`./public/investasi/${updateImage.url}`, upFolder);
|
|
}
|
|
|
|
const editInves = await prisma.investasi.update({
|
|
where: {
|
|
id: data.id,
|
|
},
|
|
data: {
|
|
title: data.title,
|
|
targetDana: "" + data.targetDana,
|
|
hargaLembar: "" + data.hargaLembar,
|
|
totalLembar: "" + data.totalLembar,
|
|
roi: data.roi,
|
|
masterPencarianInvestorId: data.MasterPencarianInvestor.id,
|
|
masterPembagianDevidenId: data.MasterPembagianDeviden.id,
|
|
masterPeriodeDevidenId: data.MasterPeriodeDeviden.id,
|
|
},
|
|
});
|
|
|
|
if (!editInves) {
|
|
return {
|
|
status: 400,
|
|
message: "Gagal update",
|
|
};
|
|
}
|
|
|
|
revalidatePath(RouterInvestasi_OLD.detail_draft);
|
|
return {
|
|
status: 200,
|
|
message: "Berhasil Disimpan",
|
|
};
|
|
}
|