import prisma from "@/lib/prisma";
import { IbuHamilStatus } from "@prisma/client";

const IBU_HAMIL_DATA = [
  {
    id: "ibu_hamil_001",
    nama: "Ni Wayan Sari Dewi",
    nik: "5101014504960001",
    usiaKehamilan: 28,
    hpht: new Date("2025-10-20"),
    taksiranLahir: new Date("2026-07-26"),
    alamat: "Banjar Pudak, Desa Darmasaba",
    noHp: "08123456701",
    posyanduId: "cmkanjnmx0006vntz1cn7owpb",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_002",
    nama: "Ni Made Artini",
    nik: "5101012808980002",
    usiaKehamilan: 16,
    hpht: new Date("2026-01-13"),
    taksiranLahir: new Date("2026-10-20"),
    alamat: "Banjar Mawar, Desa Darmasaba",
    noHp: "08123456702",
    posyanduId: "posyandu_mawar_001",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_003",
    nama: "Ni Putu Rahayu",
    nik: "5101010109000003",
    usiaKehamilan: 32,
    hpht: new Date("2025-09-22"),
    taksiranLahir: new Date("2026-06-29"),
    alamat: "Banjar Melati, Desa Darmasaba",
    noHp: "08123456703",
    posyanduId: "posyandu_melati_001",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_004",
    nama: "Ni Komang Lestari",
    nik: "5101011505010004",
    usiaKehamilan: 8,
    hpht: new Date("2026-03-10"),
    taksiranLahir: new Date("2026-12-14"),
    alamat: "Banjar Dahlia, Desa Darmasaba",
    noHp: "08123456704",
    posyanduId: "posyandu_dahlia_001",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_005",
    nama: "Ni Nyoman Suartini",
    nik: "5101012012990005",
    usiaKehamilan: 24,
    hpht: new Date("2025-11-17"),
    taksiranLahir: new Date("2026-08-24"),
    alamat: "Banjar Anggrek, Desa Darmasaba",
    noHp: "08123456705",
    posyanduId: "posyandu_anggrek_001",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_006",
    nama: "Ni Ketut Suriani",
    nik: "5101010307970006",
    usiaKehamilan: 20,
    hpht: new Date("2025-12-15"),
    taksiranLahir: new Date("2026-09-21"),
    alamat: "Banjar Kamboja, Desa Darmasaba",
    noHp: "08123456706",
    posyanduId: "posyandu_kamboja_001",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_007",
    nama: "Ni Wayan Rustini",
    nik: "5101011806960007",
    usiaKehamilan: 36,
    hpht: new Date("2025-08-25"),
    taksiranLahir: new Date("2026-06-01"),
    alamat: "Banjar Melur, Desa Darmasaba",
    noHp: "08123456707",
    posyanduId: "posyandu_melur_001",
    status: IbuHamilStatus.AKTIF,
    catatan: "Tekanan darah perlu dipantau rutin",
  },
  {
    id: "ibu_hamil_008",
    nama: "Ni Made Sudiani",
    nik: "5101010202020008",
    usiaKehamilan: 12,
    hpht: new Date("2026-02-10"),
    taksiranLahir: new Date("2026-11-17"),
    alamat: "Banjar Kenanga, Desa Darmasaba",
    noHp: "08123456708",
    posyanduId: "posyandu_kenanga_001",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_009",
    nama: "Ni Putu Yuliani",
    nik: "5101011507980009",
    usiaKehamilan: 28,
    hpht: new Date("2025-10-20"),
    taksiranLahir: new Date("2026-07-26"),
    alamat: "Banjar Pudak, Desa Darmasaba",
    noHp: "08123456709",
    posyanduId: "cmkanjnmx0006vntz1cn7owpb",
    status: IbuHamilStatus.AKTIF,
  },
  {
    id: "ibu_hamil_010",
    nama: "Ni Nyoman Darmayanti",
    nik: "5101012309010010",
    usiaKehamilan: 16,
    hpht: new Date("2026-01-13"),
    taksiranLahir: new Date("2026-10-20"),
    alamat: "Banjar Mawar, Desa Darmasaba",
    noHp: "08123456710",
    posyanduId: "posyandu_mawar_001",
    status: IbuHamilStatus.AKTIF,
    catatan: "Anemia ringan, konsumsi suplemen zat besi",
  },
  {
    id: "ibu_hamil_011",
    nama: "Ni Wayan Purwati",
    nik: "5101010905950011",
    usiaKehamilan: 40,
    hpht: new Date("2025-07-28"),
    taksiranLahir: new Date("2026-05-04"),
    alamat: "Banjar Melati, Desa Darmasaba",
    noHp: "08123456711",
    posyanduId: "posyandu_melati_001",
    status: IbuHamilStatus.MELAHIRKAN,
    catatan: "Melahirkan normal di Puskesmas Abiansemal 3",
  },
  {
    id: "ibu_hamil_012",
    nama: "Ni Made Suarningsih",
    nik: "5101011403930012",
    usiaKehamilan: 39,
    hpht: new Date("2025-08-04"),
    taksiranLahir: new Date("2026-05-11"),
    alamat: "Banjar Dahlia, Desa Darmasaba",
    noHp: "08123456712",
    posyanduId: "posyandu_dahlia_001",
    status: IbuHamilStatus.MELAHIRKAN,
  },
  {
    id: "ibu_hamil_013",
    nama: "Ni Komang Sugiantari",
    nik: "5101012706010013",
    usiaKehamilan: 10,
    alamat: "Banjar Anggrek, Desa Darmasaba",
    noHp: "08123456713",
    posyanduId: "posyandu_anggrek_001",
    status: IbuHamilStatus.KEGUGURAN,
    catatan: "Keguguran pada usia kehamilan 10 minggu, sudah ditangani",
  },
  {
    id: "ibu_hamil_014",
    nama: "Ni Putu Aryanti",
    nik: "5101010508940014",
    usiaKehamilan: 0,
    alamat: "Banjar Kamboja, Desa Darmasaba",
    noHp: "08123456714",
    posyanduId: "posyandu_kamboja_001",
    status: IbuHamilStatus.NONAKTIF,
    catatan: "Data lama, tidak aktif terdaftar",
  },
  {
    id: "ibu_hamil_015",
    nama: "Ni Ketut Suparmi",
    nik: "5101011912920015",
    usiaKehamilan: 0,
    alamat: "Banjar Melur, Desa Darmasaba",
    noHp: "08123456715",
    posyanduId: "posyandu_melur_001",
    status: IbuHamilStatus.NONAKTIF,
  },
];

export async function seedIbuHamil() {
  console.log("🔄 Seeding Ibu Hamil...");

  for (const d of IBU_HAMIL_DATA) {
    await prisma.ibuHamil.upsert({
      where: { id: d.id },
      update: {
        nama: d.nama,
        nik: d.nik,
        usiaKehamilan: d.usiaKehamilan,
        hpht: d.hpht ?? null,
        taksiranLahir: d.taksiranLahir ?? null,
        alamat: d.alamat,
        noHp: d.noHp,
        posyanduId: d.posyanduId,
        status: d.status,
        catatan: d.catatan ?? null,
      },
      create: {
        id: d.id,
        nama: d.nama,
        nik: d.nik,
        usiaKehamilan: d.usiaKehamilan,
        hpht: d.hpht ?? null,
        taksiranLahir: d.taksiranLahir ?? null,
        alamat: d.alamat,
        noHp: d.noHp,
        posyanduId: d.posyanduId,
        status: d.status,
        catatan: d.catatan ?? null,
      },
    });
    console.log(`✅ Ibu hamil seeded: ${d.nama} (${d.status})`);
  }

  console.log("🎉 Ibu Hamil seed selesai");
}
