tamabahan
This commit is contained in:
@@ -37,3 +37,22 @@ model Credential {
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
}
|
||||
|
||||
model Pengaduan {
|
||||
id String @id @default(cuid())
|
||||
jenis_laporan String
|
||||
name String?
|
||||
phone String?
|
||||
detail String?
|
||||
status StatusPengaduan @default(diterima)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
}
|
||||
|
||||
enum StatusPengaduan {
|
||||
diterima
|
||||
antrian
|
||||
dikerjakan
|
||||
ditolak
|
||||
selesai
|
||||
}
|
||||
|
||||
@@ -1,9 +1,39 @@
|
||||
import Elysia, { t } from "elysia";
|
||||
import { prisma } from "../lib/prisma";
|
||||
|
||||
const url = "https://cld-dkr-makuro-seafile.wibudev.com/api2"
|
||||
const TOKEN = "fa49bf1774cad2ec89d2882ae2c6ac1f5d7df445"
|
||||
const REPO_ID = "de64ff3c-0081-45f3-a5a6-6c799a098649"
|
||||
|
||||
const pengaduanDesa: string[] = [
|
||||
"Pengaduan Pelayanan Publik Desa",
|
||||
"Pengaduan Bantuan Sosial (Bansos)",
|
||||
"Pengaduan Penyalahgunaan Dana Desa",
|
||||
"Pengaduan Infrastruktur Rusak (jalan, jembatan, saluran air)",
|
||||
"Pengaduan Lingkungan (sampah, pencemaran, banjir)",
|
||||
"Pengaduan Keamanan dan Ketertiban",
|
||||
"Pengaduan Sengketa Tanah Desa",
|
||||
"Pengaduan Ketenagakerjaan (tenaga kerja lokal, proyek desa)",
|
||||
"Pengaduan Disiplin Aparat Desa",
|
||||
"Pengaduan Administrasi Kependudukan (KTP, KK, surat menyurat)",
|
||||
"Pengaduan Layanan Kesehatan Masyarakat",
|
||||
"Pengaduan Pendidikan (sekolah, bantuan siswa miskin)",
|
||||
"Pengaduan Usaha Mikro dan UMKM Desa",
|
||||
"Pengaduan Kegiatan Bumdes",
|
||||
"Pengaduan Pungutan Liar atau Gratifikasi",
|
||||
"Pengaduan Kekerasan Rumah Tangga atau Sosial",
|
||||
"Pengaduan Pelanggaran Adat dan Norma Sosial",
|
||||
"Pengaduan Proyek Pembangunan Tidak Transparan",
|
||||
"Pengaduan Bencana Alam dan Penanganannya",
|
||||
"Pengaduan Diskriminasi atau Ketidakadilan Sosial",
|
||||
"Pengaduan Pelanggaran Hak Tanah Kas Desa",
|
||||
"Pengaduan Penyaluran Air dan Irigasi",
|
||||
"Pengaduan Akses Internet atau Telekomunikasi Desa",
|
||||
"Pengaduan Fasilitas Umum Tidak Layak",
|
||||
"Pengaduan Kegiatan Tidak Berizin di Wilayah Desa"
|
||||
] as const;
|
||||
|
||||
|
||||
const DarmasabaRoute = new Elysia({
|
||||
prefix: "/darmasaba",
|
||||
tags: ["darmasaba"]
|
||||
@@ -189,9 +219,18 @@ const DarmasabaRoute = new Elysia({
|
||||
description: "get content of file in darmasaba/pengetahuan-umum/<file_name>"
|
||||
}
|
||||
})
|
||||
.post("/buat-laporan", ({ body }) => {
|
||||
.post("/buat-pengaduan", async ({ body }) => {
|
||||
const { jenis_laporan, name, phone, detail } = body
|
||||
|
||||
await prisma.pengaduan.create({
|
||||
data: {
|
||||
jenis_laporan,
|
||||
detail,
|
||||
name,
|
||||
phone
|
||||
}
|
||||
})
|
||||
|
||||
return `
|
||||
${JSON.stringify(body)}
|
||||
|
||||
@@ -199,17 +238,38 @@ const DarmasabaRoute = new Elysia({
|
||||
|
||||
}, {
|
||||
body: t.Object({
|
||||
jenis_laporan: t.String(),
|
||||
jenis_laporan: t.Union(
|
||||
pengaduanDesa.map((v) => t.Literal(v))
|
||||
),
|
||||
name: t.String(),
|
||||
phone: t.String(),
|
||||
detail: t.String()
|
||||
}),
|
||||
detail: {
|
||||
summary: "buat-laporan atau pengaduan",
|
||||
description: `
|
||||
tool untuk membuat laporan atau pengaduan warga kepada desa darmasaba
|
||||
|
||||
`
|
||||
summary: "buat-pengaduan atau pelaporan",
|
||||
description: `tool untuk membuat pengaduan atau pelaporan warga kepada desa darmasaba`
|
||||
}
|
||||
})
|
||||
.post("/status-pengaduan", async ({ body }) => {
|
||||
const { name, phone } = body
|
||||
|
||||
const pengaduan = await prisma.pengaduan.findMany({
|
||||
where: {
|
||||
name,
|
||||
phone
|
||||
}
|
||||
})
|
||||
|
||||
return pengaduan
|
||||
|
||||
}, {
|
||||
body: t.Object({
|
||||
name: t.String(),
|
||||
phone: t.String()
|
||||
}),
|
||||
detail: {
|
||||
summary: "lihat status pengaduan",
|
||||
description: "melikat status pengaduan dari user"
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user