ProvinceSeeder.ts 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. import prisma from '../../src/prisma/PrismaClient';
  2. import { now } from '../../src/utils/TimeLocal';
  3. const provinces: string[] = [
  4. "Aceh", "Bali", "Banten", "Bengkulu", "DI Yogyakarta", "DKI Jakarta", "Gorontalo",
  5. "Jambi", "Jawa Barat", "Jawa Tengah", "Jawa Timur", "Kalimantan Barat",
  6. "Kalimantan Selatan", "Kalimantan Tengah", "Kalimantan Timur", "Kalimantan Utara",
  7. "Kepulauan Bangka Belitung", "Kepulauan Riau", "Lampung", "Maluku",
  8. "Maluku Utara", "Nusa Tenggara Barat", "Nusa Tenggara Timur", "Papua",
  9. "Papua Barat", "Papua Barat Daya", "Papua Pegunungan", "Papua Selatan",
  10. "Papua Tengah", "Riau", "Sulawesi Barat", "Sulawesi Selatan", "Sulawesi Tengah",
  11. "Sulawesi Tenggara", "Sulawesi Utara", "Sumatera Barat", "Sumatera Selatan", "Sumatera Utara"
  12. ];
  13. export async function seedProvinces(): Promise<void> {
  14. for (const name of provinces.sort()) {
  15. await prisma.province.upsert({
  16. where: { name }, // 'name' harus @unique di schema.prisma
  17. create: {
  18. name,
  19. createdAt: now().toDate(),
  20. },
  21. update: {
  22. updatedAt: now().toDate()
  23. }
  24. });
  25. }
  26. console.log('✅ Provinces seeded!');
  27. }