Files
desa-darmasaba/src/app/api/[[...slugs]]/_lib/kependudukan/migrasi-penduduk/index.ts
nico 50801e5c8a fix(kependudukan): remove jenisKelamin field and align MigrasiPenduduk with database schema
- Remove jenisKelamin field from API, state, and UI components
- Fix MigrasiPenduduk API to use null instead of undefined for optional fields
- Update create/edit forms to properly handle asal/tujuan fields based on jenis
- Fix DatePickerInput type handling with valueFormat prop
- Update list page to display asal or tujuan conditionally
- Add proper select statements in API responses
- Fix TypeScript type errors in migrasi-penduduk module

Closes: Schema mismatch causing errors when inputting migrasi penduduk data

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-13 15:53:58 +08:00

44 lines
1.2 KiB
TypeScript

import Elysia, { t } from "elysia";
import migrasiPendudukFindUnique from "./findUnique";
import migrasiPendudukUpdate from "./updt";
import migrasiPendudukFindMany from "./findMany";
import migrasiPendudukCreate from "./create";
import migrasiPendudukDelete from "./del";
const MigrasiPenduduk = new Elysia({
prefix: "/migrasipenduduk",
tags: ["Kependudukan/Migrasi Penduduk"],
})
.get("/:id", async (context) => {
const response = await migrasiPendudukFindUnique(new Request(context.request))
return response
})
.get("/find-many", migrasiPendudukFindMany)
.post("/create", migrasiPendudukCreate, {
body: t.Object({
jenis: t.String(),
nama: t.String(),
tanggal: t.String(),
asalTujuan: t.String(),
alasan: t.Optional(t.String()),
}),
})
.put("/:id", migrasiPendudukUpdate, {
params: t.Object({
id: t.String(),
}),
body: t.Object({
jenis: t.String(),
nama: t.String(),
tanggal: t.String(),
asalTujuan: t.String(),
alasan: t.Optional(t.String()),
}),
})
.delete("/del/:id", migrasiPendudukDelete, {
params: t.Object({
id: t.String(),
}),
})
export default MigrasiPenduduk;