From 143d9aefbb8c483219cb42aac0baf74d03dfccf0 Mon Sep 17 00:00:00 2001 From: mahmood Date: Sun, 25 Oct 2026 13:31:35 +0330 Subject: [PATCH] =?UTF-8?q?fix(cities):=20remove=20'=D8=A7=D8=B3=D8=AA?= =?UTF-8?q?=D8=A7=D9=86'=20prefix,=20keep=20clean=20city/province=20names?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migration.sql | 161 ++++++++++-------- .../migration.sql | 161 ++++++++++-------- 2 files changed, 188 insertions(+), 134 deletions(-) diff --git a/apps/api/prisma/migrations/20261025120000_seed_iran_cities/migration.sql b/apps/api/prisma/migrations/20261025120000_seed_iran_cities/migration.sql index 90fe83c..c5a7150 100644 --- a/apps/api/prisma/migrations/20261025120000_seed_iran_cities/migration.sql +++ b/apps/api/prisma/migrations/20261025120000_seed_iran_cities/migration.sql @@ -1,135 +1,162 @@ --- Migration: Populate all 31 provinces of Iran under Iran (country) --- Leaves cities to be added manually by admin users as needed. +-- Migration: Populate all 31 provinces/cities of Iran without "استان" prefix +-- Clean names (تهران, اصفهان, فارس, خراسان رضوی, ...) INSERT INTO "City" ("id", "name", "parentId") VALUES ('city-iran', 'ایران', NULL) ON CONFLICT ("id") DO NOTHING; -INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-368ec488a60e1e68', 'استان آذربایجان شرقی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان آذربایجان شرقی'); +-- If rows with 'city-tehran', etc. exist and have child relations, re-link them before cleanup +DO $$ +BEGIN + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-tehran') THEN + UPDATE "Customer" SET "cityId" = 'prov-e9dedb90e02298da' WHERE "cityId" = 'city-tehran'; + UPDATE "Branch" SET "cityId" = 'prov-e9dedb90e02298da' WHERE "cityId" = 'city-tehran'; + DELETE FROM "City" WHERE "id" = 'city-tehran'; + END IF; + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-mashhad') THEN + UPDATE "Customer" SET "cityId" = 'prov-e10485d2d3377704' WHERE "cityId" = 'city-mashhad'; + UPDATE "Branch" SET "cityId" = 'prov-e10485d2d3377704' WHERE "cityId" = 'city-mashhad'; + DELETE FROM "City" WHERE "id" = 'city-mashhad'; + END IF; + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-isfahan') THEN + UPDATE "Customer" SET "cityId" = 'prov-4bb74d0dee027e26' WHERE "cityId" = 'city-isfahan'; + DELETE FROM "City" WHERE "id" = 'city-isfahan'; + END IF; + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-tabriz') THEN + UPDATE "Customer" SET "cityId" = 'prov-368ec488a60e1e68' WHERE "cityId" = 'city-tabriz'; + DELETE FROM "City" WHERE "id" = 'city-tabriz'; + END IF; +END $$; + +-- Strip any existing 'استان ' prefix +UPDATE "City" +SET "name" = regexp_replace("name", '^استان\s+', '') +WHERE "name" LIKE 'استان %'; INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-059893dce6617346', 'استان آذربایجان غربی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان آذربایجان غربی'); +SELECT 'prov-368ec488a60e1e68', 'آذربایجان شرقی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'آذربایجان شرقی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-7f952fb4706a65b2', 'استان اردبیل', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان اردبیل'); +SELECT 'prov-059893dce6617346', 'آذربایجان غربی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'آذربایجان غربی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-4bb74d0dee027e26', 'استان اصفهان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان اصفهان'); +SELECT 'prov-7f952fb4706a65b2', 'اردبیل', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'اردبیل'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-d5a20c324e2bf5ec', 'استان البرز', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان البرز'); +SELECT 'prov-4bb74d0dee027e26', 'اصفهان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'اصفهان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-1fd9876fd977c8e2', 'استان ایلام', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان ایلام'); +SELECT 'prov-d5a20c324e2bf5ec', 'البرز', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'البرز'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-6f0490cb87e4939d', 'استان بوشهر', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان بوشهر'); +SELECT 'prov-1fd9876fd977c8e2', 'ایلام', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'ایلام'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-e9dedb90e02298da', 'استان تهران', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان تهران'); +SELECT 'prov-6f0490cb87e4939d', 'بوشهر', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'بوشهر'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-f23cd3502271e60d', 'استان چهارمحال وبختیاری', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان چهارمحال وبختیاری'); +SELECT 'prov-e9dedb90e02298da', 'تهران', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'تهران'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-b14f3eca6f74c8a1', 'استان خراسان جنوبی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خراسان جنوبی'); +SELECT 'prov-f23cd3502271e60d', 'چهارمحال وبختیاری', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'چهارمحال وبختیاری'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-e10485d2d3377704', 'استان خراسان رضوی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خراسان رضوی'); +SELECT 'prov-b14f3eca6f74c8a1', 'خراسان جنوبی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خراسان جنوبی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-82f38d7aa96738ef', 'استان خراسان شمالی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خراسان شمالی'); +SELECT 'prov-e10485d2d3377704', 'خراسان رضوی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خراسان رضوی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-c6de3aa600da89fe', 'استان خوزستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خوزستان'); +SELECT 'prov-82f38d7aa96738ef', 'خراسان شمالی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خراسان شمالی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-2127da5b93f2e4ed', 'استان زنجان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان زنجان'); +SELECT 'prov-c6de3aa600da89fe', 'خوزستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خوزستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-a9d8994f85a4baa1', 'استان سمنان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان سمنان'); +SELECT 'prov-2127da5b93f2e4ed', 'زنجان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'زنجان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-7473b594a866fc0c', 'استان سیستان وبلوچستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان سیستان وبلوچستان'); +SELECT 'prov-a9d8994f85a4baa1', 'سمنان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'سمنان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-ce88252516c33bcd', 'استان فارس', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان فارس'); +SELECT 'prov-7473b594a866fc0c', 'سیستان وبلوچستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'سیستان وبلوچستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-051c9d7434579ba9', 'استان قزوین', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان قزوین'); +SELECT 'prov-ce88252516c33bcd', 'فارس', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'فارس'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-59bdab497e60231d', 'استان قم', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان قم'); +SELECT 'prov-051c9d7434579ba9', 'قزوین', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'قزوین'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-9cd248fca43cf3e1', 'استان کردستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کردستان'); +SELECT 'prov-59bdab497e60231d', 'قم', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'قم'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-f370a75e6696ac35', 'استان کرمان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کرمان'); +SELECT 'prov-9cd248fca43cf3e1', 'کردستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کردستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-95d1978710f350b9', 'استان کرمانشاه', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کرمانشاه'); +SELECT 'prov-f370a75e6696ac35', 'کرمان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کرمان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-9133a0ab97b44c42', 'استان کهگیلویه وبویراحمد', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کهگیلویه وبویراحمد'); +SELECT 'prov-95d1978710f350b9', 'کرمانشاه', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کرمانشاه'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-78a19214224fba5a', 'استان گلستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان گلستان'); +SELECT 'prov-9133a0ab97b44c42', 'کهگیلویه وبویراحمد', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کهگیلویه وبویراحمد'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-53658a2882958756', 'استان گیلان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان گیلان'); +SELECT 'prov-78a19214224fba5a', 'گلستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'گلستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-5503435e124e6b8a', 'استان لرستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان لرستان'); +SELECT 'prov-53658a2882958756', 'گیلان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'گیلان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-0e9b1e2a03ae998e', 'استان مازندران', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان مازندران'); +SELECT 'prov-5503435e124e6b8a', 'لرستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'لرستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-edd6a2122382dbfd', 'استان مرکزی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان مرکزی'); +SELECT 'prov-0e9b1e2a03ae998e', 'مازندران', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'مازندران'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-1b4881a3362e90cd', 'استان هرمزگان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان هرمزگان'); +SELECT 'prov-edd6a2122382dbfd', 'مرکزی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'مرکزی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-7b47361e6d5ffef0', 'استان همدان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان همدان'); +SELECT 'prov-1b4881a3362e90cd', 'هرمزگان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'هرمزگان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-8eafb7340d3dfe31', 'استان یزد', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان یزد'); +SELECT 'prov-7b47361e6d5ffef0', 'همدان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'همدان'); + +INSERT INTO "City" ("id", "name", "parentId") +SELECT 'prov-8eafb7340d3dfe31', 'یزد', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'یزد'); --- Make sure existing provinces point to city-iran as parent UPDATE "City" SET "parentId" = 'city-iran' -WHERE "name" LIKE 'استان%' AND "parentId" IS NULL; +WHERE "parentId" IS NULL AND "id" <> 'city-iran'; diff --git a/apps/api/release/migrations/20261025120000_seed_iran_cities/migration.sql b/apps/api/release/migrations/20261025120000_seed_iran_cities/migration.sql index 90fe83c..c5a7150 100644 --- a/apps/api/release/migrations/20261025120000_seed_iran_cities/migration.sql +++ b/apps/api/release/migrations/20261025120000_seed_iran_cities/migration.sql @@ -1,135 +1,162 @@ --- Migration: Populate all 31 provinces of Iran under Iran (country) --- Leaves cities to be added manually by admin users as needed. +-- Migration: Populate all 31 provinces/cities of Iran without "استان" prefix +-- Clean names (تهران, اصفهان, فارس, خراسان رضوی, ...) INSERT INTO "City" ("id", "name", "parentId") VALUES ('city-iran', 'ایران', NULL) ON CONFLICT ("id") DO NOTHING; -INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-368ec488a60e1e68', 'استان آذربایجان شرقی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان آذربایجان شرقی'); +-- If rows with 'city-tehran', etc. exist and have child relations, re-link them before cleanup +DO $$ +BEGIN + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-tehran') THEN + UPDATE "Customer" SET "cityId" = 'prov-e9dedb90e02298da' WHERE "cityId" = 'city-tehran'; + UPDATE "Branch" SET "cityId" = 'prov-e9dedb90e02298da' WHERE "cityId" = 'city-tehran'; + DELETE FROM "City" WHERE "id" = 'city-tehran'; + END IF; + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-mashhad') THEN + UPDATE "Customer" SET "cityId" = 'prov-e10485d2d3377704' WHERE "cityId" = 'city-mashhad'; + UPDATE "Branch" SET "cityId" = 'prov-e10485d2d3377704' WHERE "cityId" = 'city-mashhad'; + DELETE FROM "City" WHERE "id" = 'city-mashhad'; + END IF; + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-isfahan') THEN + UPDATE "Customer" SET "cityId" = 'prov-4bb74d0dee027e26' WHERE "cityId" = 'city-isfahan'; + DELETE FROM "City" WHERE "id" = 'city-isfahan'; + END IF; + IF EXISTS (SELECT 1 FROM "City" WHERE "id" = 'city-tabriz') THEN + UPDATE "Customer" SET "cityId" = 'prov-368ec488a60e1e68' WHERE "cityId" = 'city-tabriz'; + DELETE FROM "City" WHERE "id" = 'city-tabriz'; + END IF; +END $$; + +-- Strip any existing 'استان ' prefix +UPDATE "City" +SET "name" = regexp_replace("name", '^استان\s+', '') +WHERE "name" LIKE 'استان %'; INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-059893dce6617346', 'استان آذربایجان غربی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان آذربایجان غربی'); +SELECT 'prov-368ec488a60e1e68', 'آذربایجان شرقی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'آذربایجان شرقی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-7f952fb4706a65b2', 'استان اردبیل', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان اردبیل'); +SELECT 'prov-059893dce6617346', 'آذربایجان غربی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'آذربایجان غربی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-4bb74d0dee027e26', 'استان اصفهان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان اصفهان'); +SELECT 'prov-7f952fb4706a65b2', 'اردبیل', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'اردبیل'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-d5a20c324e2bf5ec', 'استان البرز', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان البرز'); +SELECT 'prov-4bb74d0dee027e26', 'اصفهان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'اصفهان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-1fd9876fd977c8e2', 'استان ایلام', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان ایلام'); +SELECT 'prov-d5a20c324e2bf5ec', 'البرز', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'البرز'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-6f0490cb87e4939d', 'استان بوشهر', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان بوشهر'); +SELECT 'prov-1fd9876fd977c8e2', 'ایلام', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'ایلام'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-e9dedb90e02298da', 'استان تهران', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان تهران'); +SELECT 'prov-6f0490cb87e4939d', 'بوشهر', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'بوشهر'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-f23cd3502271e60d', 'استان چهارمحال وبختیاری', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان چهارمحال وبختیاری'); +SELECT 'prov-e9dedb90e02298da', 'تهران', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'تهران'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-b14f3eca6f74c8a1', 'استان خراسان جنوبی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خراسان جنوبی'); +SELECT 'prov-f23cd3502271e60d', 'چهارمحال وبختیاری', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'چهارمحال وبختیاری'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-e10485d2d3377704', 'استان خراسان رضوی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خراسان رضوی'); +SELECT 'prov-b14f3eca6f74c8a1', 'خراسان جنوبی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خراسان جنوبی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-82f38d7aa96738ef', 'استان خراسان شمالی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خراسان شمالی'); +SELECT 'prov-e10485d2d3377704', 'خراسان رضوی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خراسان رضوی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-c6de3aa600da89fe', 'استان خوزستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان خوزستان'); +SELECT 'prov-82f38d7aa96738ef', 'خراسان شمالی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خراسان شمالی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-2127da5b93f2e4ed', 'استان زنجان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان زنجان'); +SELECT 'prov-c6de3aa600da89fe', 'خوزستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'خوزستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-a9d8994f85a4baa1', 'استان سمنان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان سمنان'); +SELECT 'prov-2127da5b93f2e4ed', 'زنجان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'زنجان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-7473b594a866fc0c', 'استان سیستان وبلوچستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان سیستان وبلوچستان'); +SELECT 'prov-a9d8994f85a4baa1', 'سمنان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'سمنان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-ce88252516c33bcd', 'استان فارس', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان فارس'); +SELECT 'prov-7473b594a866fc0c', 'سیستان وبلوچستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'سیستان وبلوچستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-051c9d7434579ba9', 'استان قزوین', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان قزوین'); +SELECT 'prov-ce88252516c33bcd', 'فارس', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'فارس'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-59bdab497e60231d', 'استان قم', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان قم'); +SELECT 'prov-051c9d7434579ba9', 'قزوین', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'قزوین'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-9cd248fca43cf3e1', 'استان کردستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کردستان'); +SELECT 'prov-59bdab497e60231d', 'قم', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'قم'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-f370a75e6696ac35', 'استان کرمان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کرمان'); +SELECT 'prov-9cd248fca43cf3e1', 'کردستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کردستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-95d1978710f350b9', 'استان کرمانشاه', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کرمانشاه'); +SELECT 'prov-f370a75e6696ac35', 'کرمان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کرمان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-9133a0ab97b44c42', 'استان کهگیلویه وبویراحمد', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان کهگیلویه وبویراحمد'); +SELECT 'prov-95d1978710f350b9', 'کرمانشاه', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کرمانشاه'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-78a19214224fba5a', 'استان گلستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان گلستان'); +SELECT 'prov-9133a0ab97b44c42', 'کهگیلویه وبویراحمد', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'کهگیلویه وبویراحمد'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-53658a2882958756', 'استان گیلان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان گیلان'); +SELECT 'prov-78a19214224fba5a', 'گلستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'گلستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-5503435e124e6b8a', 'استان لرستان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان لرستان'); +SELECT 'prov-53658a2882958756', 'گیلان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'گیلان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-0e9b1e2a03ae998e', 'استان مازندران', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان مازندران'); +SELECT 'prov-5503435e124e6b8a', 'لرستان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'لرستان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-edd6a2122382dbfd', 'استان مرکزی', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان مرکزی'); +SELECT 'prov-0e9b1e2a03ae998e', 'مازندران', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'مازندران'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-1b4881a3362e90cd', 'استان هرمزگان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان هرمزگان'); +SELECT 'prov-edd6a2122382dbfd', 'مرکزی', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'مرکزی'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-7b47361e6d5ffef0', 'استان همدان', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان همدان'); +SELECT 'prov-1b4881a3362e90cd', 'هرمزگان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'هرمزگان'); INSERT INTO "City" ("id", "name", "parentId") -SELECT 'prov-8eafb7340d3dfe31', 'استان یزد', 'city-iran' -WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'استان یزد'); +SELECT 'prov-7b47361e6d5ffef0', 'همدان', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'همدان'); + +INSERT INTO "City" ("id", "name", "parentId") +SELECT 'prov-8eafb7340d3dfe31', 'یزد', 'city-iran' +WHERE NOT EXISTS (SELECT 1 FROM "City" WHERE "name" = 'یزد'); --- Make sure existing provinces point to city-iran as parent UPDATE "City" SET "parentId" = 'city-iran' -WHERE "name" LIKE 'استان%' AND "parentId" IS NULL; +WHERE "parentId" IS NULL AND "id" <> 'city-iran';