RiauCitySeeder.ts 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. import prisma from '../../../src/prisma/PrismaClient';
  2. import { now } from '../../../src/utils/TimeLocal';
  3. const cityNames: string[] = [
  4. 'Kabupaten Bengkalis',
  5. 'Kabupaten Indragiri Hilir',
  6. 'Kabupaten Indragiri Hulu',
  7. 'Kabupaten Kampar',
  8. 'Kabupaten Kepulauan Meranti',
  9. 'Kabupaten Kuantan Singingi',
  10. 'Kabupaten Pelalawan',
  11. 'Kabupaten Rokan Hilir',
  12. 'Kabupaten Rokan Hulu',
  13. 'Kabupaten Siak',
  14. 'Kota Dumai',
  15. 'Kota Pekanbaru'
  16. ];
  17. export const seedRiauCities = async (): Promise<void> => {
  18. const province = await prisma.province.findFirst({
  19. where: { name: 'Riau' },
  20. });
  21. if (!province) {
  22. console.error('❌ Province Riau not found. Seed it first.');
  23. return;
  24. }
  25. for (const name of cityNames) {
  26. await prisma.city.upsert({
  27. where: {
  28. // Pastikan kamu sudah buat @@unique([name, province_id]) di model City pada schema.prisma
  29. name_province_id: {
  30. name,
  31. province_id: province.id,
  32. },
  33. },
  34. update: {
  35. updatedAt: now().toDate(),
  36. },
  37. create: {
  38. name,
  39. province_id: province.id,
  40. createdAt: now().toDate(),
  41. },
  42. });
  43. }
  44. console.log('✅ Riau City seeded!.');
  45. };
  46. // const prisma = require('../../../src/prisma/PrismaClient.js');
  47. // const timeLocal = require('../../../src/utils/TimeLocal.js')
  48. // const cityNames = [
  49. // 'Kabupaten Bengkalis',
  50. // 'Kabupaten Indragiri Hilir',
  51. // 'Kabupaten Indragiri Hulu',
  52. // 'Kabupaten Kampar',
  53. // 'Kabupaten Kepulauan Meranti',
  54. // 'Kabupaten Kuantan Singingi',
  55. // 'Kabupaten Pelalawan',
  56. // 'Kabupaten Rokan Hilir',
  57. // 'Kabupaten Rokan Hulu',
  58. // 'Kabupaten Siak',
  59. // 'Kota Dumai',
  60. // 'Kota Pekanbaru'
  61. // // 12
  62. // ];
  63. // exports.seedRiauCities = async () => {
  64. // const province = await prisma.province.findFirst({
  65. // where: { name: 'Riau' },
  66. // });
  67. // if (!province) {
  68. // console.error('❌ Province Riau not found. Seed it first.');
  69. // return;
  70. // }
  71. // for (const name of cityNames) {
  72. // await prisma.city.upsert({
  73. // where: {
  74. // name_province_id: {
  75. // name,
  76. // province_id: province.id,
  77. // },
  78. // },
  79. // update: { updatedAt: timeLocal.now().toDate() },
  80. // create: {
  81. // name,
  82. // province_id: province.id,
  83. // createdAt: timeLocal.now().toDate()
  84. // },
  85. // });
  86. // }
  87. // console.log('✅ Riau City seeded!.');
  88. // };