## feat
- Create function
- Get list by status id
- Get one vote by id
### No issuue
This commit is contained in:
2024-02-09 17:50:38 +08:00
parent e6c120bf75
commit 0dd8e287f4
94 changed files with 1522 additions and 224 deletions

View File

@@ -17,6 +17,7 @@ import donasi_namaBank from "../../../bin/seeder/donasi/master_bank.json";
import donasi_status_invoice from "../../../bin/seeder/donasi/master_status_invoice.json";
import event_status from "../../../bin/seeder/event/master_status.json";
import event_tipe_acara from "../../../bin/seeder/event/master_tipe_acara.json";
import voting_status from "../../../bin/seeder/voting/master_status.json";
export async function GET(req: Request) {
const dev = new URL(req.url).searchParams.get("dev");
@@ -296,6 +297,21 @@ export async function GET(req: Request) {
});
}
for (let v of voting_status) {
await prisma.voting_Status.upsert({
where: {
id: v.id,
},
create: {
id: v.id,
name: v.name,
},
update: {
name: v.name,
},
});
}
return NextResponse.json({ success: true });
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,4 +1,4 @@
import { LayoutVote_Create } from "@/app_modules/vote";
import { LayoutVote_Create } from "@/app_modules/voting";
import React from "react";
export default async function Layout({

View File

@@ -1,4 +1,4 @@
import { Vote_Create } from "@/app_modules/vote";
import { Vote_Create } from "@/app_modules/voting";
export default async function Page() {
return (

View File

@@ -1,4 +1,4 @@
import { LayoutVote_DetailDraft } from "@/app_modules/vote";
import { LayoutVote_DetailDraft } from "@/app_modules/voting";
import React from "react";
export default function Layout({ children }: { children: React.ReactNode }) {

View File

@@ -1,4 +1,4 @@
import { Vote_DetailDraft } from "@/app_modules/vote";
import { Vote_DetailDraft } from "@/app_modules/voting";
export default function Page() {
return (

View File

@@ -1,4 +1,4 @@
import { LayoutVote_DetailKontribusi } from "@/app_modules/vote";
import { LayoutVote_DetailKontribusi } from "@/app_modules/voting";
import React from "react";
export default async function Layout({

View File

@@ -1,4 +1,4 @@
import { Vote_DetailKontribusi } from "@/app_modules/vote";
import { Vote_DetailKontribusi } from "@/app_modules/voting";
export default async function Page() {
return (

View File

@@ -1,4 +1,4 @@
import { LayoutVote_MainDetail } from "@/app_modules/vote";
import { LayoutVote_MainDetail } from "@/app_modules/voting";
import React from "react";
export default async function Layout({

View File

@@ -1,4 +1,4 @@
import { Vote_MainDetail } from "@/app_modules/vote";
import { Vote_MainDetail } from "@/app_modules/voting";
export default async function Page(){
return<>

View File

@@ -1,4 +1,4 @@
import { LayoutVote_DetailPublish } from "@/app_modules/vote";
import { LayoutVote_DetailPublish } from "@/app_modules/voting";
import React from "react";
export default function Layout({ children }: { children: React.ReactNode }) {

View File

@@ -1,4 +1,4 @@
import { Vote_DetailPublish } from "@/app_modules/vote";
import { Vote_DetailPublish } from "@/app_modules/voting";
export default function Page(){
return <>

View File

@@ -1,4 +1,4 @@
import { LayoutVote_DetailReject } from "@/app_modules/vote";
import { LayoutVote_DetailReject } from "@/app_modules/voting";
import React from "react";
export default async function Layout({children}: {children: React.ReactNode}) {

View File

@@ -1,4 +1,4 @@
import { Vote_DetailReject } from "@/app_modules/vote";
import { Vote_DetailReject } from "@/app_modules/voting";
export default async function Page() {
return <>

View File

@@ -1,4 +1,4 @@
import { LayoutVote_DetailReview } from "@/app_modules/vote";
import { LayoutVote_DetailReview } from "@/app_modules/voting";
import React from "react";
export default function Layout({ children }: { children: React.ReactNode }) {

View File

@@ -0,0 +1,13 @@
import { Vote_DetailReview } from "@/app_modules/voting";
import { Vote_getOnebyId } from "@/app_modules/voting/fun/get/get_one_by_id";
export default async function Page({ params }: { params: { id: string } }) {
let voteId = params.id;
const dataVote = await Vote_getOnebyId(voteId);
return (
<>
<Vote_DetailReview dataVote={dataVote as any} />
</>
);
}

View File

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

View File

@@ -1,4 +1,4 @@
import { LayoutVote_DetailRiwayatSaya } from "@/app_modules/vote";
import { LayoutVote_DetailRiwayatSaya } from "@/app_modules/voting";
import React from "react";
export default async function Layout({

View File

@@ -1,4 +1,4 @@
import { Vote_DetailRiwayatSaya } from "@/app_modules/vote";
import { Vote_DetailRiwayatSaya } from "@/app_modules/voting";
export default async function Page() {
return (

View File

@@ -1,4 +1,4 @@
import { LayoutVote_DetailSemuaRiwayat } from "@/app_modules/vote";
import { LayoutVote_DetailSemuaRiwayat } from "@/app_modules/voting";
import React from "react";
export default async function Layout({

View File

@@ -1,4 +1,4 @@
import { Vote_DetailSemuaRiwayat } from "@/app_modules/vote";
import { Vote_DetailSemuaRiwayat } from "@/app_modules/voting";
export default async function Page() {

View File

@@ -1,4 +1,4 @@
import { LayoutVote_Edit } from "@/app_modules/vote";
import { LayoutVote_Edit } from "@/app_modules/voting";
import React from "react";
export default async function Layout({

View File

@@ -1,4 +1,4 @@
import { Vote_Edit } from "@/app_modules/vote";
import { Vote_Edit } from "@/app_modules/voting";
export default async function Page() {
return (

View File

@@ -1,4 +1,4 @@
import { Vote_Beranda } from "@/app_modules/vote";
import { Vote_Beranda } from "@/app_modules/voting";
export default async function Page() {
return<>

View File

@@ -1,4 +1,4 @@
import { Vote_Kontribusi } from "@/app_modules/vote";
import { Vote_Kontribusi } from "@/app_modules/voting";
export default async function Page() {

View File

@@ -1,4 +1,4 @@
import { LayoutVote_Main } from "@/app_modules/vote";
import { LayoutVote_Main } from "@/app_modules/voting";
import React from "react";
export default async function Layout({

View File

@@ -1,4 +1,4 @@
import { Vote_Riwayat } from "@/app_modules/vote";
import { Vote_Riwayat } from "@/app_modules/voting";
export default async function Page() {
return (

View File

@@ -1,9 +1,20 @@
import { Vote_Status } from "@/app_modules/vote";
import { Vote_Status } from "@/app_modules/voting";
import { Vote_getListByStatusId } from "@/app_modules/voting/fun/get/get_list_status_by_status_id";
export default async function Page() {
const listPublish = await Vote_getListByStatusId("1");
const listReview = await Vote_getListByStatusId("2");
const listDraft = await Vote_getListByStatusId("3");
const listReject = await Vote_getListByStatusId("4");
return (
<>
<Vote_Status />
<Vote_Status
listPublish={listPublish as any}
listReview={listReview as any}
listDraft={listDraft as any}
listReject={listReject as any}
/>
</>
);
}

View File

@@ -1,4 +1,4 @@
import { Vote_Splash } from "@/app_modules/vote";
import { Vote_Splash } from "@/app_modules/voting";
export default async function Page() {
return (

View File

@@ -0,0 +1,8 @@
export const RouterAdminVote = {
// main
main: "/dev/admin/vote/main",
table_publish: "/dev/admin/vote/child/table_publish",
table_review: "/dev/admin/vote/child/table_review",
table_reject: "/dev/admin/vote/child/table_reject",
riwayat: "/dev/admin/vote/child/riwayat",
};

View File

@@ -15,7 +15,7 @@ export const RouterVote = {
//detail
main_detail: "/dev/vote/detail/main",
detail_publish: "/dev/vote/detail/publish",
detail_review: "/dev/vote/detail/review",
detail_review: "/dev/vote/detail/review/",
detail_draft: "/dev/vote/detail/draft",
detail_reject: "/dev/vote/detail/reject",
detail_kontribusi: "/dev/vote/detail/kontribusi",

View File

@@ -1,13 +1,54 @@
'use client'
"use client";
import { Button } from "@mantine/core";
import { Box, Button, Stack, TextInput } from "@mantine/core";
import makuro_test from "./makuro_test";
import { useState } from "react";
import _, { forIn } from "lodash";
export default function ViewMakuro() {
const [listnya, setListnya] = useState<any[]>([
{
name: "Voting",
value: "",
},
{ name: "Voting", value: "" },
]);
return <>
return (
<>
<Stack p={24}>
{listnya.map((e, k) => (
<Box key={k}>
<TextInput
onChange={(v) => {
const val = _.clone(listnya);
val[k].value = v.currentTarget.value;
setListnya([...val]);
}}
label={e.name}
/>
</Box>
))}
<Button
onClick={() => makuro_test()}
>Tekan Aja</Button>
onClick={() => {
// const cek = listnya[listnya.length - 1]
// console.log(cek.id + 1);
if (listnya.length > 4) return console.log("ga bisa lebih");
setListnya([...listnya, { name: "Voting", value: "" }]);
}}
>
{" "}
Tambah
</Button>
<Button
onClick={() => {
console.log(JSON.stringify(listnya, null, 4));
}}
>
Hasilnya
</Button>
</Stack>
</>
}
);
}