Tambahan Di menu PPID
This commit is contained in:
@@ -4,14 +4,25 @@ import GrafikHasilKepuasanMasyarakat from "./ikm/grafik_hasil_kepuasan_masyaraka
|
||||
import GrafikBerdasarkanJenisKelamin from "./ikm/grafik_berdasarkan_jenis_kelamin";
|
||||
import GrafikBerdasarkanResponden from "./ikm/grafik_responden";
|
||||
import GrafikBerdasarkanUmur from "./ikm/grafik_berdasarkan_umur";
|
||||
import PermohonanInformasiPublik from "./permohonan_informasi_publik";
|
||||
import PermohonanKeberatanInformasiPublik from "./permohonan_keberatan_informasi_publik";
|
||||
import ProfilePPID from "./profile_ppid";
|
||||
import VisiMisiPPID from "./visi_misi_ppid";
|
||||
|
||||
|
||||
|
||||
const PPID = new Elysia({ prefix: "/api/ppid", tags: ["PPID"] })
|
||||
.use(ProfilePPID)
|
||||
.use(DaftarInformasiPublik)
|
||||
.use(GrafikHasilKepuasanMasyarakat)
|
||||
.use(GrafikBerdasarkanJenisKelamin)
|
||||
.use(GrafikBerdasarkanResponden)
|
||||
.use(GrafikBerdasarkanUmur)
|
||||
.use(PermohonanInformasiPublik)
|
||||
.use(PermohonanKeberatanInformasiPublik)
|
||||
.use(VisiMisiPPID)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
import { Prisma } from "@prisma/client";
|
||||
import { Context } from "elysia";
|
||||
|
||||
type FormCreate = Prisma.PermohonanInformasiPublikGetPayload<{
|
||||
select: {
|
||||
name: true;
|
||||
nik: true;
|
||||
email: true;
|
||||
notelp: true;
|
||||
alamat: true;
|
||||
jenisInformasiDimintaId: true;
|
||||
caraMemperolehInformasiId: true;
|
||||
caraMemperolehSalinanInformasiId: true;
|
||||
}
|
||||
}>
|
||||
export default async function permohonanInformasiPublikCreate(context: Context) {
|
||||
const body = context.body as FormCreate;
|
||||
|
||||
await prisma.permohonanInformasiPublik.create({
|
||||
data: {
|
||||
name: body.name,
|
||||
nik: body.nik,
|
||||
email: body.email,
|
||||
notelp: body.notelp,
|
||||
alamat: body.alamat,
|
||||
jenisInformasiDimintaId: body.jenisInformasiDimintaId,
|
||||
caraMemperolehInformasiId: body.caraMemperolehInformasiId,
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: "Permohonan Informasi Publik Berhasil Dibuat",
|
||||
data: {
|
||||
...body,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
|
||||
export default async function permohonanInformasiPublikFindMany() {
|
||||
const res = await prisma.permohonanInformasiPublik.findMany();
|
||||
return {
|
||||
data: res,
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
import Elysia, { t } from "elysia";
|
||||
import permohonanInformasiPublikCreate from "./create";
|
||||
import permohonanInformasiPublikFindMany from "./find-many";
|
||||
import jenisInformasiFindMany from "./jenisInformasi";
|
||||
import memperolehInformasiFindMany from "./memperolehInformasi";
|
||||
import salinanInformasiFindMany from "./salinanInformasi";
|
||||
|
||||
const PermohonanInformasiPublik = new Elysia({
|
||||
prefix: "/permohonaninformasipublik",
|
||||
tags: ["PPID/Permohonan Informasi Publik"]
|
||||
})
|
||||
.get("/jenisInformasi/find-many", jenisInformasiFindMany)
|
||||
.get("/memperolehInformasi/find-many", memperolehInformasiFindMany)
|
||||
.get("/salinanInformasi/find-many", salinanInformasiFindMany)
|
||||
.get("/find-many", permohonanInformasiPublikFindMany)
|
||||
.post("/create", permohonanInformasiPublikCreate, {
|
||||
body: t.Object({
|
||||
name: t.String(),
|
||||
nik: t.String(),
|
||||
notelp: t.String(),
|
||||
alamat: t.String(),
|
||||
email: t.String(),
|
||||
jenisInformasiDimintaId: t.Union([t.String(), t.Null()]),
|
||||
caraMemperolehInformasiId: t.Union([t.String(), t.Null()]),
|
||||
caraMemperolehSalinanInformasiId: t.Union([t.String(), t.Null()]),
|
||||
}),
|
||||
})
|
||||
|
||||
export default PermohonanInformasiPublik
|
||||
@@ -0,0 +1,8 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
|
||||
export default async function jenisInformasiFindMany() {
|
||||
const res = await prisma.jenisInformasiDiminta.findMany();
|
||||
return {
|
||||
data: res,
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
|
||||
export default async function memperolehInformasiFindMany() {
|
||||
const res = await prisma.caraMemperolehInformasi.findMany();
|
||||
return {
|
||||
data: res,
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
|
||||
export default async function salinanInformasiFindMany() {
|
||||
const res = await prisma.caraMemperolehSalinanInformasi.findMany();
|
||||
return {
|
||||
data: res,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
import { Prisma } from "@prisma/client";
|
||||
import { Context } from "elysia";
|
||||
|
||||
type FormCreate = Prisma.FormulirPermohonanKeberatanGetPayload<{
|
||||
select: {
|
||||
name: true;
|
||||
email: true;
|
||||
notelp: true;
|
||||
alasan: true;
|
||||
}
|
||||
}>
|
||||
|
||||
export default async function permohonanKeberatanInformasiPublikCreate(context: Context) {
|
||||
const body = context.body as FormCreate;
|
||||
|
||||
await prisma.formulirPermohonanKeberatan.create({
|
||||
data: {
|
||||
name: body.name,
|
||||
email: body.email,
|
||||
notelp: body.notelp,
|
||||
alasan: body.alasan,
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: "Permohonan Keberatan Informasi Publik Berhasil Dibuat",
|
||||
data: {
|
||||
...body,
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
|
||||
export default async function permohonanKeberatanInformasiPublikFindMany() {
|
||||
const res = await prisma.formulirPermohonanKeberatan.findMany();
|
||||
return {
|
||||
data: res,
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
import Elysia, { t } from "elysia";
|
||||
import permohonanKeberatanInformasiPublikCreate from "./create";
|
||||
import permohonanKeberatanInformasiPublikFindMany from "./find-many";
|
||||
|
||||
const PermohonanKeberatanInformasiPublik = new Elysia({
|
||||
prefix: "/permohonankeberataninformasipublik",
|
||||
tags: ["PPID/Permohonan Keberatan Informasi Publik"],
|
||||
})
|
||||
.get("/find-many", permohonanKeberatanInformasiPublikFindMany)
|
||||
.post("/create", permohonanKeberatanInformasiPublikCreate, {
|
||||
body: t.Object({
|
||||
name: t.String(),
|
||||
email: t.String(),
|
||||
notelp: t.String(),
|
||||
alasan: t.String(),
|
||||
}),
|
||||
})
|
||||
|
||||
export default PermohonanKeberatanInformasiPublik;
|
||||
34
src/app/api/[[...slugs]]/_lib/ppid/profile_ppid/create.ts
Normal file
34
src/app/api/[[...slugs]]/_lib/ppid/profile_ppid/create.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
import { Prisma } from "@prisma/client";
|
||||
import { Context } from "elysia";
|
||||
|
||||
type FormCreate = Prisma.ProfilePPIDGetPayload<{
|
||||
select: {
|
||||
name: true;
|
||||
biodata: true;
|
||||
riwayat: true;
|
||||
pengalaman: true;
|
||||
unggulan: true;
|
||||
}
|
||||
}>
|
||||
export default async function profilePPIDCreate(context: Context) {
|
||||
const body = context.body as FormCreate;
|
||||
|
||||
await prisma.profilePPID.create({
|
||||
data: {
|
||||
name: body.name,
|
||||
biodata: body.biodata,
|
||||
riwayat: body.riwayat,
|
||||
pengalaman: body.pengalaman,
|
||||
unggulan: body.unggulan,
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: "Profile PPID Berhasil Dibuat",
|
||||
data: {
|
||||
...body,
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
|
||||
export default async function profilePPIDFindMany() {
|
||||
const res = await prisma.profilePPID.findMany();
|
||||
return{
|
||||
data: res
|
||||
}
|
||||
}
|
||||
|
||||
21
src/app/api/[[...slugs]]/_lib/ppid/profile_ppid/index.ts
Normal file
21
src/app/api/[[...slugs]]/_lib/ppid/profile_ppid/index.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import Elysia, { t } from "elysia";
|
||||
import profilePPIDCreate from "./create";
|
||||
import profilePPIDFindMany from "./find-many";
|
||||
|
||||
const ProfilePPID = new Elysia({
|
||||
prefix: "/profileppid",
|
||||
tags: ["PPID/Profile PPID"]
|
||||
})
|
||||
.get("/find-many", profilePPIDFindMany)
|
||||
.post("/create", profilePPIDCreate, {
|
||||
body: t.Object({
|
||||
name: t.String(),
|
||||
biodata: t.String(),
|
||||
riwayat: t.String(),
|
||||
pengalaman: t.String(),
|
||||
unggulan: t.String(),
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
export default ProfilePPID;
|
||||
@@ -0,0 +1,7 @@
|
||||
import Elysia from "elysia";
|
||||
import MisiPPID from "./misi_ppid";
|
||||
|
||||
const VisiMisiPPID = new Elysia({ prefix: "/visimisippid", tags: ["PPID/Visi Misi PPID"] })
|
||||
.use(MisiPPID)
|
||||
|
||||
export default VisiMisiPPID
|
||||
@@ -0,0 +1,27 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
import { Prisma } from "@prisma/client";
|
||||
import { Context } from "elysia";
|
||||
|
||||
type FormCreate = Prisma.MisiPPIDGetPayload<{
|
||||
select: {
|
||||
content: true;
|
||||
}
|
||||
}>
|
||||
|
||||
export default async function misiPPIDCreate(context: Context) {
|
||||
const body = context.body as FormCreate;
|
||||
|
||||
await prisma.misiPPID.create({
|
||||
data: {
|
||||
content: body.content,
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: "Misi PPID Berhasil Dibuat",
|
||||
data: {
|
||||
...body,
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
import { Context } from "elysia";
|
||||
|
||||
export async function misiPPIDDelete(context: Context) {
|
||||
const id = context.params.id
|
||||
|
||||
await prisma.misiPPID.delete({
|
||||
where: {
|
||||
id: id
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: "Misi PPID Berhasil Dihapus",
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
|
||||
export async function misiPPIDFindMany() {
|
||||
const res = await prisma.misiPPID.findMany();
|
||||
return {
|
||||
data: res,
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
import Elysia, { t } from "elysia";
|
||||
import { misiPPIDFindMany } from "./find-many";
|
||||
import misiPPIDCreate from "./create";
|
||||
import { misiPPIDDelete } from "./delete";
|
||||
import misiPPIDUpdate from "./update";
|
||||
|
||||
const MisiPPID = new Elysia({
|
||||
prefix: "/misippid",
|
||||
tags: ["PPID/Visi Misi PPID/ Misi PPID"],
|
||||
})
|
||||
.get("/find-many", misiPPIDFindMany)
|
||||
.post("/create", misiPPIDCreate, {
|
||||
body: t.Object({
|
||||
content: t.String(),
|
||||
})
|
||||
})
|
||||
.put("/update/:id", misiPPIDUpdate, {
|
||||
body: t.Object({
|
||||
content: t.String(),
|
||||
})
|
||||
})
|
||||
.delete("/delete/:id", misiPPIDDelete)
|
||||
|
||||
export default MisiPPID;
|
||||
@@ -0,0 +1,29 @@
|
||||
import prisma from "@/lib/prisma";
|
||||
import { Prisma } from "@prisma/client";
|
||||
import { Context } from "elysia";
|
||||
|
||||
type FormUpdate = Prisma.MisiPPIDGetPayload<{
|
||||
select: {
|
||||
content: true;
|
||||
}
|
||||
}>
|
||||
|
||||
export default async function misiPPIDUpdate(context: Context) {
|
||||
const id = context.params.id
|
||||
const body = context.body as FormUpdate;
|
||||
|
||||
await prisma.misiPPID.update({
|
||||
where: { id: id },
|
||||
data: {
|
||||
content: body.content,
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: "Misi PPID Berhasil Diupdate",
|
||||
data: {
|
||||
...body,
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user