From 42b4bbe740213f74ca0205c8c0d4e3ef3a2a1ac9 Mon Sep 17 00:00:00 2001 From: Sayyid Hamid Mahdavi Date: Mon, 9 Nov 2020 14:00:41 +0330 Subject: [PATCH] add province api --- apps/users/provinces_and_cities.py | 1336 ++++++++++++++++++++++++++++ apps/users/views.py | 9 + gooyal_accounts/urls.py | 3 +- 3 files changed, 1347 insertions(+), 1 deletion(-) create mode 100644 apps/users/provinces_and_cities.py diff --git a/apps/users/provinces_and_cities.py b/apps/users/provinces_and_cities.py new file mode 100644 index 0000000..89823bc --- /dev/null +++ b/apps/users/provinces_and_cities.py @@ -0,0 +1,1336 @@ +PROVINCES = { + 1: {'cities': [{'id': 1, 'name': 'آذرشهر'}, + {'id': 2, 'name': 'تیمورلو'}, + {'id': 3, 'name': 'گوگان'}, + {'id': 4, 'name': 'ممقان'}, + {'id': 5, 'name': 'اسکو'}, + {'id': 6, 'name': 'ایلخچی'}, + {'id': 7, 'name': 'سهند'}, + {'id': 8, 'name': 'اهر'}, + {'id': 9, 'name': 'هوراند'}, + {'id': 10, 'name': 'بستان آباد'}, + {'id': 11, 'name': 'تیکمه داش'}, + {'id': 12, 'name': 'بناب'}, + {'id': 13, 'name': 'باسمنج'}, + {'id': 14, 'name': 'تبریز'}, + {'id': 15, 'name': 'خسروشاه'}, + {'id': 16, 'name': 'سردرود'}, + {'id': 17, 'name': 'جلفا'}, + {'id': 18, 'name': 'سیه رود'}, + {'id': 19, 'name': 'هادیشهر'}, + {'id': 20, 'name': 'قره آغاج'}, + {'id': 21, 'name': 'خمارلو'}, + {'id': 22, 'name': 'دوزدوزان'}, + {'id': 23, 'name': 'سراب'}, + {'id': 24, 'name': 'شربیان'}, + {'id': 25, 'name': 'مهربان'}, + {'id': 26, 'name': 'تسوج'}, + {'id': 27, 'name': 'خامنه'}, + {'id': 28, 'name': 'سیس'}, + {'id': 29, 'name': 'شبستر'}, + {'id': 30, 'name': 'شرفخانه'}, + {'id': 31, 'name': 'شندآباد'}, + {'id': 32, 'name': 'صوفیان'}, + {'id': 33, 'name': 'کوزه کنان'}, + {'id': 34, 'name': 'وایقان'}, + {'id': 35, 'name': 'جوان قلعه'}, + {'id': 36, 'name': 'عجب شیر'}, + {'id': 37, 'name': 'آبش احمد'}, + {'id': 38, 'name': 'کلیبر'}, + {'id': 39, 'name': 'خداجو(خراجو)'}, + {'id': 40, 'name': 'مراغه'}, + {'id': 41, 'name': 'بناب مرند'}, + {'id': 42, 'name': 'زنوز'}, + {'id': 43, 'name': 'کشکسرای'}, + {'id': 44, 'name': 'مرند'}, + {'id': 45, 'name': 'یامچی'}, + {'id': 46, 'name': 'لیلان'}, + {'id': 47, 'name': 'مبارک شهر'}, + {'id': 48, 'name': 'ملکان'}, + {'id': 49, 'name': 'آقکند'}, + {'id': 50, 'name': 'اچاچی'}, + {'id': 51, 'name': 'ترک'}, + {'id': 52, 'name': 'ترکمانچای'}, + {'id': 53, 'name': 'میانه'}, + {'id': 54, 'name': 'خاروانا'}, + {'id': 55, 'name': 'ورزقان'}, + {'id': 56, 'name': 'بخشایش'}, + {'id': 57, 'name': 'خواجه'}, + {'id': 58, 'name': 'زرنق'}, + {'id': 59, 'name': 'کلوانق'}, + {'id': 60, 'name': 'هریس'}, + {'id': 61, 'name': 'نظرکهریزی'}, + {'id': 62, 'name': 'هشترود'}], + 'en_name': 'azerbaijan-east', + 'name': 'آذربایجان شرقی'}, + 2: {'cities': [{'id': 63, 'name': 'ارومیه'}, + {'id': 64, 'name': 'سرو'}, + {'id': 65, 'name': 'سیلوانه'}, + {'id': 66, 'name': 'قوشچی'}, + {'id': 67, 'name': 'نوشین'}, + {'id': 68, 'name': 'اشنویه'}, + {'id': 69, 'name': 'نالوس'}, + {'id': 70, 'name': 'بوکان'}, + {'id': 71, 'name': 'سیمینه'}, + {'id': 72, 'name': 'پلدشت'}, + {'id': 73, 'name': 'نازک علیا'}, + {'id': 74, 'name': 'پیرانشهر'}, + {'id': 75, 'name': 'گردکشانه'}, + {'id': 76, 'name': 'تکاب'}, + {'id': 77, 'name': 'آواجیق'}, + {'id': 78, 'name': 'سیه چشمه'}, + {'id': 79, 'name': 'قره ضیاءالدین'}, + {'id': 80, 'name': 'ایواوغلی'}, + {'id': 81, 'name': 'خوی'}, + {'id': 82, 'name': 'دیزج دیز'}, + {'id': 83, 'name': 'زرآباد'}, + {'id': 84, 'name': 'فیرورق'}, + {'id': 85, 'name': 'قطور'}, + {'id': 86, 'name': 'ربط'}, + {'id': 87, 'name': 'سردشت'}, + {'id': 88, 'name': 'میرآباد'}, + {'id': 89, 'name': 'تازه شهر'}, + {'id': 90, 'name': 'سلماس'}, + {'id': 91, 'name': 'شاهین دژ'}, + {'id': 92, 'name': 'کشاورز'}, + {'id': 93, 'name': 'محمودآباد'}, + {'id': 94, 'name': 'شوط'}, + {'id': 95, 'name': 'مرگنلر'}, + {'id': 96, 'name': 'بازرگان'}, + {'id': 97, 'name': 'ماکو'}, + {'id': 98, 'name': 'خلیفان'}, + {'id': 99, 'name': 'مهاباد'}, + {'id': 100, 'name': 'باروق'}, + {'id': 101, 'name': 'چهاربرج'}, + {'id': 102, 'name': 'میاندوآب'}, + {'id': 103, 'name': 'محمدیار'}, + {'id': 104, 'name': 'نقده'}], + 'en_name': 'azerbaijan-west', + 'name': 'آذربایجان غربی'}, + 3: {'cities': [{'id': 105, 'name': 'اردبیل'}, + {'id': 106, 'name': 'هیر'}, + {'id': 107, 'name': 'بیله سوار'}, + {'id': 108, 'name': 'جعفرآباد'}, + {'id': 109, 'name': 'اسلام اباد'}, + {'id': 110, 'name': 'اصلاندوز'}, + {'id': 111, 'name': 'پارس آباد'}, + {'id': 112, 'name': 'تازه کند'}, + {'id': 113, 'name': 'خلخال'}, + {'id': 114, 'name': 'کلور'}, + {'id': 115, 'name': 'هشتجین'}, + {'id': 116, 'name': 'سرعین'}, + {'id': 117, 'name': 'گیوی'}, + {'id': 118, 'name': 'تازه کندانگوت'}, + {'id': 119, 'name': 'گرمی'}, + {'id': 120, 'name': 'رضی'}, + {'id': 121, 'name': 'فخراباد'}, + {'id': 122, 'name': 'قصابه'}, + {'id': 123, 'name': 'لاهرود'}, + {'id': 124, 'name': 'مرادلو'}, + {'id': 125, 'name': 'مشگین شهر'}, + {'id': 126, 'name': 'آبی بیگلو'}, + {'id': 127, 'name': 'عنبران'}, + {'id': 128, 'name': 'نمین'}, + {'id': 129, 'name': 'کوراییم'}, + {'id': 130, 'name': 'نیر'}], + 'en_name': 'ardebil', + 'name': 'اردبیل'}, + 4: {'cities': [{'id': 131, 'name': 'آران وبیدگل'}, + {'id': 132, 'name': 'ابوزیدآباد'}, + {'id': 133, 'name': 'سفیدشهر'}, + {'id': 134, 'name': 'نوش آباد'}, + {'id': 135, 'name': 'اردستان'}, + {'id': 136, 'name': 'زواره'}, + {'id': 137, 'name': 'مهاباد'}, + {'id': 138, 'name': 'اژیه'}, + {'id': 139, 'name': 'اصفهان'}, + {'id': 140, 'name': 'بهارستان'}, + {'id': 141, 'name': 'تودشک'}, + {'id': 142, 'name': 'حسن اباد'}, + {'id': 143, 'name': 'زیار'}, + {'id': 144, 'name': 'سجزی'}, + {'id': 145, 'name': 'قهجاورستان'}, + {'id': 146, 'name': 'کوهپایه'}, + {'id': 147, 'name': 'محمدآباد'}, + {'id': 148, 'name': 'نصرآباد'}, + {'id': 149, 'name': 'نیک آباد'}, + {'id': 150, 'name': 'ورزنه'}, + {'id': 151, 'name': 'هرند'}, + {'id': 152, 'name': 'حبیب آباد'}, + {'id': 153, 'name': 'خورزوق'}, + {'id': 154, 'name': 'دستگرد'}, + {'id': 155, 'name': 'دولت آباد'}, + {'id': 156, 'name': 'سین'}, + {'id': 157, 'name': 'شاپورآباد'}, + {'id': 158, 'name': 'کمشچه'}, + {'id': 159, 'name': 'افوس'}, + {'id': 160, 'name': 'بویین ومیاندشت'}, + {'id': 161, 'name': 'تیران'}, + {'id': 162, 'name': 'رضوانشهر'}, + {'id': 163, 'name': 'عسگران'}, + {'id': 164, 'name': 'چادگان'}, + {'id': 165, 'name': 'رزوه'}, + {'id': 166, 'name': 'اصغرآباد'}, + {'id': 167, 'name': 'خمینی شهر'}, + {'id': 168, 'name': 'درچه'}, + {'id': 169, 'name': 'کوشک'}, + {'id': 170, 'name': 'خوانسار'}, + {'id': 171, 'name': 'جندق'}, + {'id': 172, 'name': 'خور'}, + {'id': 173, 'name': 'فرخی'}, + {'id': 174, 'name': 'دهاقان'}, + {'id': 175, 'name': 'گلشن'}, + {'id': 176, 'name': 'حنا'}, + {'id': 177, 'name': 'سمیرم'}, + {'id': 178, 'name': 'کمه'}, + {'id': 179, 'name': 'ونک'}, + {'id': 180, 'name': 'شاهین شهر'}, + {'id': 181, 'name': 'گرگاب'}, + {'id': 182, 'name': 'گزبرخوار'}, + {'id': 183, 'name': 'لای بید'}, + {'id': 184, 'name': 'میمه'}, + {'id': 185, 'name': 'وزوان'}, + {'id': 186, 'name': 'شهرضا'}, + {'id': 187, 'name': 'منظریه'}, + {'id': 188, 'name': 'داران'}, + {'id': 189, 'name': 'دامنه'}, + {'id': 190, 'name': 'برف انبار'}, + {'id': 191, 'name': 'فریدونشهر'}, + {'id': 192, 'name': 'ابریشم'}, + {'id': 193, 'name': 'ایمانشهر'}, + {'id': 194, 'name': 'بهاران شهر'}, + {'id': 195, 'name': 'پیربکران'}, + {'id': 196, 'name': 'زازران'}, + {'id': 197, 'name': 'فلاورجان'}, + {'id': 198, 'name': 'قهدریجان'}, + {'id': 199, 'name': 'کلیشادوسودرجان'}, + {'id': 200, 'name': 'برزک'}, + {'id': 201, 'name': 'جوشقان قالی'}, + {'id': 202, 'name': 'قمصر'}, + {'id': 203, 'name': 'کاشان'}, + {'id': 204, 'name': 'کامو و چوگان'}, + {'id': 205, 'name': 'مشکات'}, + {'id': 206, 'name': 'نیاسر'}, + {'id': 207, 'name': 'گلپایگان'}, + {'id': 208, 'name': 'گلشهر'}, + {'id': 209, 'name': 'گوگد'}, + {'id': 210, 'name': 'باغ بهادران'}, + {'id': 211, 'name': 'باغشاد'}, + {'id': 212, 'name': 'چرمهین'}, + {'id': 213, 'name': 'چمگردان'}, + {'id': 214, 'name': 'زاینده رود'}, + {'id': 215, 'name': 'زرین شهر'}, + {'id': 216, 'name': 'سده لنجان'}, + {'id': 217, 'name': 'فولادشهر'}, + {'id': 218, 'name': 'ورنامخواست'}, + {'id': 219, 'name': 'دیزیچه'}, + {'id': 220, 'name': 'زیباشهر'}, + {'id': 221, 'name': 'طالخونچه'}, + {'id': 222, 'name': 'کرکوند'}, + {'id': 223, 'name': 'مبارکه'}, + {'id': 224, 'name': 'مجلسی'}, + {'id': 225, 'name': 'انارک'}, + {'id': 226, 'name': 'بافران'}, + {'id': 227, 'name': 'نایین'}, + {'id': 228, 'name': 'جوزدان'}, + {'id': 229, 'name': 'دهق'}, + {'id': 230, 'name': 'علویجه'}, + {'id': 231, 'name': 'کهریزسنگ'}, + {'id': 232, 'name': 'گلدشت'}, + {'id': 233, 'name': 'نجف آباد'}, + {'id': 234, 'name': 'بادرود'}, + {'id': 235, 'name': 'خالدآباد'}, + {'id': 236, 'name': 'طرق رود'}, + {'id': 237, 'name': 'نطنز'}], + 'en_name': 'isfahan', + 'name': 'اصفهان'}, + 5: {'cities': [{'id': 238, 'name': 'اشتهارد'}, + {'id': 239, 'name': 'چهارباغ'}, + {'id': 240, 'name': 'شهرجدیدهشتگرد'}, + {'id': 241, 'name': 'کوهسار'}, + {'id': 242, 'name': 'گلسار'}, + {'id': 243, 'name': 'هشتگرد'}, + {'id': 244, 'name': 'طالقان'}, + {'id': 245, 'name': 'فردیس'}, + {'id': 246, 'name': 'مشکین دشت'}, + {'id': 247, 'name': 'آسارا'}, + {'id': 248, 'name': 'کرج'}, + {'id': 249, 'name': 'کمال شهر'}, + {'id': 250, 'name': 'گرمدره'}, + {'id': 251, 'name': 'ماهدشت'}, + {'id': 252, 'name': 'محمدشهر'}, + {'id': 253, 'name': 'تنکمان'}, + {'id': 254, 'name': 'نظرآباد'}], + 'en_name': 'alborz', + 'name': 'البرز'}, + 6: {'cities': [{'id': 255, 'name': 'آبدانان'}, + {'id': 256, 'name': 'سراب باغ'}, + {'id': 257, 'name': 'مورموری'}, + {'id': 258, 'name': 'ایلام'}, + {'id': 259, 'name': 'چوار'}, + {'id': 260, 'name': 'ایوان'}, + {'id': 261, 'name': 'زرنه'}, + {'id': 262, 'name': 'بدره'}, + {'id': 263, 'name': 'آسمان آباد'}, + {'id': 264, 'name': 'بلاوه'}, + {'id': 265, 'name': 'توحید'}, + {'id': 266, 'name': 'سرابله'}, + {'id': 267, 'name': 'شباب'}, + {'id': 268, 'name': 'دره شهر'}, + {'id': 269, 'name': 'ماژین'}, + {'id': 270, 'name': 'پهله'}, + {'id': 271, 'name': 'دهلران'}, + {'id': 272, 'name': 'موسیان'}, + {'id': 273, 'name': 'میمه'}, + {'id': 274, 'name': 'لومار'}, + {'id': 275, 'name': 'ارکواز'}, + {'id': 276, 'name': 'دلگشا'}, + {'id': 277, 'name': 'مهر'}, + {'id': 278, 'name': 'صالح آباد'}, + {'id': 279, 'name': 'مهران'}], + 'en_name': 'ilam', + 'name': 'ایلام'}, + 7: {'cities': [{'id': 280, 'name': 'بوشهر'}, + {'id': 281, 'name': 'چغادک'}, + {'id': 282, 'name': 'خارک'}, + {'id': 283, 'name': 'عالی شهر'}, + {'id': 284, 'name': 'آباد'}, + {'id': 285, 'name': 'اهرم'}, + {'id': 286, 'name': 'دلوار'}, + {'id': 287, 'name': 'انارستان'}, + {'id': 288, 'name': 'جم'}, + {'id': 289, 'name': 'ریز'}, + {'id': 290, 'name': 'آب پخش'}, + {'id': 291, 'name': 'برازجان'}, + {'id': 292, 'name': 'بوشکان'}, + {'id': 293, 'name': 'تنگ ارم'}, + {'id': 294, 'name': 'دالکی'}, + {'id': 295, 'name': 'سعد آباد'}, + {'id': 296, 'name': 'شبانکاره'}, + {'id': 297, 'name': 'کلمه'}, + {'id': 298, 'name': 'وحدتیه'}, + {'id': 299, 'name': 'بادوله'}, + {'id': 300, 'name': 'خورموج'}, + {'id': 301, 'name': 'شنبه'}, + {'id': 302, 'name': 'کاکی'}, + {'id': 303, 'name': 'آبدان'}, + {'id': 304, 'name': 'بردخون'}, + {'id': 305, 'name': 'بردستان'}, + {'id': 306, 'name': 'بندردیر'}, + {'id': 307, 'name': 'دوراهک'}, + {'id': 308, 'name': 'امام حسن'}, + {'id': 309, 'name': 'بندردیلم'}, + {'id': 310, 'name': 'عسلویه'}, + {'id': 311, 'name': 'نخل تقی'}, + {'id': 312, 'name': 'بندرکنگان'}, + {'id': 313, 'name': 'بنک'}, + {'id': 314, 'name': 'سیراف'}, + {'id': 315, 'name': 'بندرریگ'}, + {'id': 316, 'name': 'بندرگناوه'}], + 'en_name': 'bushehr', + 'name': 'بوشهر'}, + 8: {'cities': [{'id': 317, 'name': 'احمد آباد مستوفی'}, + {'id': 318, 'name': 'اسلامشهر'}, + {'id': 319, 'name': 'چهاردانگه'}, + {'id': 320, 'name': 'صالحیه'}, + {'id': 321, 'name': 'گلستان'}, + {'id': 322, 'name': 'نسیم شهر'}, + {'id': 323, 'name': 'پاکدشت'}, + {'id': 324, 'name': 'شریف آباد'}, + {'id': 325, 'name': 'فرون اباد'}, + {'id': 326, 'name': 'بومهن'}, + {'id': 327, 'name': 'پردیس'}, + {'id': 328, 'name': 'پیشوا'}, + {'id': 329, 'name': 'تهران'}, + {'id': 330, 'name': 'آبسرد'}, + {'id': 331, 'name': 'آبعلی'}, + {'id': 332, 'name': 'دماوند'}, + {'id': 333, 'name': 'رودهن'}, + {'id': 334, 'name': 'کیلان'}, + {'id': 335, 'name': 'پرند'}, + {'id': 336, 'name': 'رباطکریم'}, + {'id': 337, 'name': 'نصیرشهر'}, + {'id': 338, 'name': 'باقرشهر'}, + {'id': 339, 'name': 'حسن آباد'}, + {'id': 340, 'name': 'ری'}, + {'id': 341, 'name': 'کهریزک'}, + {'id': 342, 'name': 'تجریش'}, + {'id': 343, 'name': 'شمشک'}, + {'id': 344, 'name': 'فشم'}, + {'id': 345, 'name': 'لواسان'}, + {'id': 346, 'name': 'اندیشه'}, + {'id': 347, 'name': 'باغستان'}, + {'id': 348, 'name': 'شاهدشهر'}, + {'id': 349, 'name': 'شهریار'}, + {'id': 350, 'name': 'صباشهر'}, + {'id': 351, 'name': 'فردوسیه'}, + {'id': 352, 'name': 'وحیدیه'}, + {'id': 353, 'name': 'ارجمند'}, + {'id': 354, 'name': 'فیروزکوه'}, + {'id': 355, 'name': 'قدس'}, + {'id': 356, 'name': 'قرچک'}, + {'id': 357, 'name': 'صفادشت'}, + {'id': 358, 'name': 'ملارد'}, + {'id': 359, 'name': 'جوادآباد'}, + {'id': 360, 'name': 'ورامین'}], + 'en_name': 'tehran', + 'name': 'تهران'}, + 9: {'cities': [{'id': 361, 'name': 'اردل'}, + {'id': 362, 'name': 'دشتک'}, + {'id': 363, 'name': 'سرخون'}, + {'id': 364, 'name': 'کاج'}, + {'id': 365, 'name': 'بروجن'}, + {'id': 366, 'name': 'بلداجی'}, + {'id': 367, 'name': 'سفیددشت'}, + {'id': 368, 'name': 'فرادبنه'}, + {'id': 369, 'name': 'گندمان'}, + {'id': 370, 'name': 'نقنه'}, + {'id': 371, 'name': 'بن'}, + {'id': 372, 'name': 'وردنجان'}, + {'id': 373, 'name': 'سامان'}, + {'id': 374, 'name': 'سودجان'}, + {'id': 375, 'name': 'سورشجان'}, + {'id': 376, 'name': 'شهرکرد'}, + {'id': 377, 'name': 'طاقانک'}, + {'id': 378, 'name': 'فرخ شهر'}, + {'id': 379, 'name': 'کیان'}, + {'id': 380, 'name': 'نافچ'}, + {'id': 381, 'name': 'هارونی'}, + {'id': 382, 'name': 'هفشجان'}, + {'id': 383, 'name': 'باباحیدر'}, + {'id': 384, 'name': 'پردنجان'}, + {'id': 385, 'name': 'جونقان'}, + {'id': 386, 'name': 'چلیچه'}, + {'id': 387, 'name': 'فارسان'}, + {'id': 388, 'name': 'گوجان'}, + {'id': 389, 'name': 'بازفت'}, + {'id': 390, 'name': 'چلگرد'}, + {'id': 391, 'name': 'صمصامی'}, + {'id': 392, 'name': 'دستنا'}, + {'id': 393, 'name': 'شلمزار'}, + {'id': 394, 'name': 'گهرو'}, + {'id': 395, 'name': 'ناغان'}, + {'id': 396, 'name': 'آلونی'}, + {'id': 397, 'name': 'سردشت'}, + {'id': 398, 'name': 'لردگان'}, + {'id': 399, 'name': 'مال خلیفه'}, + {'id': 400, 'name': 'منج'}], + 'en_name': 'chahar-mahaal-bakhtiari', + 'name': 'چهارمحال وبختیاری'}, + 10: {'cities': [{'id': 401, 'name': 'ارسک'}, + {'id': 402, 'name': 'بشرویه'}, + {'id': 403, 'name': 'بیرجند'}, + {'id': 404, 'name': 'خوسف'}, + {'id': 405, 'name': 'محمدشهر'}, + {'id': 406, 'name': 'اسدیه'}, + {'id': 407, 'name': 'طبس مسینا'}, + {'id': 408, 'name': 'قهستان'}, + {'id': 409, 'name': 'گزیک'}, + {'id': 410, 'name': 'حاجی آباد'}, + {'id': 411, 'name': 'زهان'}, + {'id': 412, 'name': 'آیسک'}, + {'id': 413, 'name': 'سرایان'}, + {'id': 414, 'name': 'سه قلعه'}, + {'id': 415, 'name': 'سربیشه'}, + {'id': 416, 'name': 'مود'}, + {'id': 417, 'name': 'دیهوک'}, + {'id': 418, 'name': 'طبس'}, + {'id': 419, 'name': 'عشق آباد'}, + {'id': 420, 'name': 'اسلامیه'}, + {'id': 421, 'name': 'فردوس'}, + {'id': 422, 'name': 'آرین شهر'}, + {'id': 423, 'name': 'اسفدن'}, + {'id': 424, 'name': 'خضری دشت بیاض'}, + {'id': 425, 'name': 'قاین'}, + {'id': 426, 'name': 'نیمبلوک'}, + {'id': 427, 'name': 'شوسف'}, + {'id': 428, 'name': 'نهبندان'}], + 'en_name': 'khorasan-south', + 'name': 'خراسان جنوبی'}, + 11: {'cities': [{'id': 429, 'name': 'باخرز'}, + {'id': 430, 'name': 'بجستان'}, + {'id': 431, 'name': 'یونسی'}, + {'id': 432, 'name': 'انابد'}, + {'id': 433, 'name': 'بردسکن'}, + {'id': 434, 'name': 'شهراباد'}, + {'id': 435, 'name': 'شاندیز'}, + {'id': 436, 'name': 'طرقبه'}, + {'id': 437, 'name': 'تایباد'}, + {'id': 438, 'name': 'کاریز'}, + {'id': 439, 'name': 'مشهدریزه'}, + {'id': 440, 'name': 'احمدابادصولت'}, + {'id': 441, 'name': 'تربت جام'}, + {'id': 442, 'name': 'صالح آباد'}, + {'id': 443, 'name': 'نصرآباد'}, + {'id': 444, 'name': 'نیل شهر'}, + {'id': 445, 'name': 'بایک'}, + {'id': 446, 'name': 'تربت حیدریه'}, + {'id': 447, 'name': 'رباط سنگ'}, + {'id': 448, 'name': 'کدکن'}, + {'id': 449, 'name': 'جغتای'}, + {'id': 450, 'name': 'نقاب'}, + {'id': 451, 'name': 'چناران'}, + {'id': 452, 'name': 'گلبهار'}, + {'id': 453, 'name': 'گلمکان'}, + {'id': 454, 'name': 'خلیل آباد'}, + {'id': 455, 'name': 'کندر'}, + {'id': 456, 'name': 'خواف'}, + {'id': 457, 'name': 'سلامی'}, + {'id': 458, 'name': 'سنگان'}, + {'id': 459, 'name': 'قاسم آباد'}, + {'id': 460, 'name': 'نشتیفان'}, + {'id': 461, 'name': 'سلطان آباد'}, + {'id': 462, 'name': 'داورزن'}, + {'id': 463, 'name': 'چاپشلو'}, + {'id': 464, 'name': 'درگز'}, + {'id': 465, 'name': 'لطف آباد'}, + {'id': 466, 'name': 'نوخندان'}, + {'id': 467, 'name': 'جنگل'}, + {'id': 468, 'name': 'رشتخوار'}, + {'id': 469, 'name': 'دولت آباد'}, + {'id': 470, 'name': 'روداب'}, + {'id': 471, 'name': 'سبزوار'}, + {'id': 472, 'name': 'ششتمد'}, + {'id': 473, 'name': 'سرخس'}, + {'id': 474, 'name': 'مزدآوند'}, + {'id': 475, 'name': 'سفیدسنگ'}, + {'id': 476, 'name': 'فرهادگرد'}, + {'id': 477, 'name': 'فریمان'}, + {'id': 478, 'name': 'قلندرآباد'}, + {'id': 479, 'name': 'فیروزه'}, + {'id': 480, 'name': 'همت آباد'}, + {'id': 481, 'name': 'باجگیران'}, + {'id': 482, 'name': 'قوچان'}, + {'id': 483, 'name': 'ریوش'}, + {'id': 484, 'name': 'کاشمر'}, + {'id': 485, 'name': 'شهرزو'}, + {'id': 486, 'name': 'کلات'}, + {'id': 487, 'name': 'بیدخت'}, + {'id': 488, 'name': 'کاخک'}, + {'id': 489, 'name': 'گناباد'}, + {'id': 490, 'name': 'رضویه'}, + {'id': 491, 'name': 'مشهد'}, + {'id': 492, 'name': 'مشهد ثامن'}, + {'id': 493, 'name': 'ملک آباد'}, + {'id': 494, 'name': 'شادمهر'}, + {'id': 495, 'name': 'فیض آباد'}, + {'id': 496, 'name': 'بار'}, + {'id': 497, 'name': 'چکنه'}, + {'id': 498, 'name': 'خرو'}, + {'id': 499, 'name': 'درود'}, + {'id': 500, 'name': 'عشق آباد'}, + {'id': 501, 'name': 'قدمگاه'}, + {'id': 502, 'name': 'نیشابور'}], + 'en_name': 'khorasan-razavi', + 'name': 'خراسان رضوی'}, + 12: {'cities': [{'id': 503, 'name': 'اسفراین'}, + {'id': 504, 'name': 'صفی آباد'}, + {'id': 505, 'name': 'بجنورد'}, + {'id': 506, 'name': 'چناران شهر'}, + {'id': 507, 'name': 'حصارگرمخان'}, + {'id': 508, 'name': 'جاجرم'}, + {'id': 509, 'name': 'سنخواست'}, + {'id': 510, 'name': 'شوقان'}, + {'id': 511, 'name': 'راز'}, + {'id': 512, 'name': 'زیارت'}, + {'id': 513, 'name': 'شیروان'}, + {'id': 514, 'name': 'قوشخانه'}, + {'id': 515, 'name': 'لوجلی'}, + {'id': 516, 'name': 'تیتکانلو'}, + {'id': 517, 'name': 'فاروج'}, + {'id': 518, 'name': 'ایور'}, + {'id': 519, 'name': 'درق'}, + {'id': 520, 'name': 'گرمه'}, + {'id': 521, 'name': 'آشخانه'}, + {'id': 522, 'name': 'آوا'}, + {'id': 523, 'name': 'پیش قلعه'}, + {'id': 524, 'name': 'قاضی'}], + 'en_name': 'khorasan-north', + 'name': 'خراسان شمالی'}, + 13: {'cities': [{'id': 525, 'name': 'آبادان'}, + {'id': 526, 'name': 'اروندکنار'}, + {'id': 527, 'name': 'چویبده'}, + {'id': 528, 'name': 'آغاجاری'}, + {'id': 529, 'name': 'امیدیه'}, + {'id': 530, 'name': 'جایزان'}, + {'id': 531, 'name': 'آبژدان'}, + {'id': 532, 'name': 'قلعه خواجه'}, + {'id': 533, 'name': 'آزادی'}, + {'id': 534, 'name': 'اندیمشک'}, + {'id': 535, 'name': 'بیدروبه'}, + {'id': 536, 'name': 'چم گلک'}, + {'id': 537, 'name': 'حسینیه'}, + {'id': 538, 'name': 'الهایی'}, + {'id': 539, 'name': 'اهواز'}, + {'id': 540, 'name': 'ایذه'}, + {'id': 541, 'name': 'دهدز'}, + {'id': 542, 'name': 'باغ ملک'}, + {'id': 543, 'name': 'صیدون'}, + {'id': 544, 'name': 'قلعه تل'}, + {'id': 545, 'name': 'میداود'}, + {'id': 546, 'name': 'شیبان'}, + {'id': 547, 'name': 'ملاثانی'}, + {'id': 548, 'name': 'ویس'}, + {'id': 549, 'name': 'بندرامام خمینی'}, + {'id': 550, 'name': 'بندرماهشهر'}, + {'id': 551, 'name': 'چمران'}, + {'id': 552, 'name': 'بهبهان'}, + {'id': 553, 'name': 'تشان'}, + {'id': 554, 'name': 'سردشت'}, + {'id': 555, 'name': 'منصوریه'}, + {'id': 556, 'name': 'حمیدیه'}, + {'id': 557, 'name': 'خرمشهر'}, + {'id': 558, 'name': 'مقاومت'}, + {'id': 559, 'name': 'مینوشهر'}, + {'id': 560, 'name': 'چغامیش'}, + {'id': 561, 'name': 'حمزه'}, + {'id': 562, 'name': 'دزفول'}, + {'id': 563, 'name': 'سالند'}, + {'id': 564, 'name': 'سیاه منصور'}, + {'id': 565, 'name': 'شمس آباد'}, + {'id': 566, 'name': 'شهر امام'}, + {'id': 567, 'name': 'صفی آباد'}, + {'id': 568, 'name': 'میانرود'}, + {'id': 569, 'name': 'ابوحمیظه'}, + {'id': 570, 'name': 'بستان'}, + {'id': 571, 'name': 'سوسنگرد'}, + {'id': 572, 'name': 'کوت سیدنعیم'}, + {'id': 573, 'name': 'رامشیر'}, + {'id': 574, 'name': 'مشراگه'}, + {'id': 575, 'name': 'رامهرمز'}, + {'id': 576, 'name': 'خنافره'}, + {'id': 577, 'name': 'دارخوین'}, + {'id': 578, 'name': 'شادگان'}, + {'id': 579, 'name': 'الوان'}, + {'id': 580, 'name': 'حر'}, + {'id': 581, 'name': 'شاوور'}, + {'id': 582, 'name': 'شوش'}, + {'id': 583, 'name': 'فتح المبین'}, + {'id': 584, 'name': 'سرداران'}, + {'id': 585, 'name': 'شرافت'}, + {'id': 586, 'name': 'شوشتر'}, + {'id': 587, 'name': 'گوریه'}, + {'id': 588, 'name': 'کوت عبداله'}, + {'id': 589, 'name': 'ترکالکی'}, + {'id': 590, 'name': 'جنت مکان'}, + {'id': 591, 'name': 'سماله'}, + {'id': 592, 'name': 'صالح شهر'}, + {'id': 593, 'name': 'گتوند'}, + {'id': 594, 'name': 'لالی'}, + {'id': 595, 'name': 'گلگیر'}, + {'id': 596, 'name': 'مسجدسلیمان'}, + {'id': 597, 'name': 'هفتگل'}, + {'id': 598, 'name': 'زهره'}, + {'id': 599, 'name': 'هندیجان'}, + {'id': 600, 'name': 'رفیع'}, + {'id': 601, 'name': 'هویزه'}], + 'en_name': 'khuzestan', + 'name': 'خوزستان'}, + 14: {'cities': [{'id': 602, 'name': 'ابهر'}, + {'id': 603, 'name': 'صایین قلعه'}, + {'id': 604, 'name': 'هیدج'}, + {'id': 605, 'name': 'حلب'}, + {'id': 606, 'name': 'زرین آباد'}, + {'id': 607, 'name': 'زرین رود'}, + {'id': 608, 'name': 'سجاس'}, + {'id': 609, 'name': 'سهرورد'}, + {'id': 610, 'name': 'قیدار'}, + {'id': 611, 'name': 'کرسف'}, + {'id': 612, 'name': 'گرماب'}, + {'id': 613, 'name': 'نوربهار'}, + {'id': 614, 'name': 'خرمدره'}, + {'id': 615, 'name': 'ارمغانخانه'}, + {'id': 616, 'name': 'زنجان'}, + {'id': 617, 'name': 'نیک پی'}, + {'id': 618, 'name': 'سلطانیه'}, + {'id': 619, 'name': 'آب بر'}, + {'id': 620, 'name': 'چورزق'}, + {'id': 621, 'name': 'دندی'}, + {'id': 622, 'name': 'ماه نشان'}], + 'en_name': 'zanjan', + 'name': 'زنجان'}, + 15: {'cities': [{'id': 623, 'name': 'آرادان'}, + {'id': 624, 'name': 'کهن آباد'}, + {'id': 625, 'name': 'امیریه'}, + {'id': 626, 'name': 'دامغان'}, + {'id': 627, 'name': 'دیباج'}, + {'id': 628, 'name': 'کلاته'}, + {'id': 629, 'name': 'سرخه'}, + {'id': 630, 'name': 'سمنان'}, + {'id': 631, 'name': 'بسطام'}, + {'id': 632, 'name': 'بیارجمند'}, + {'id': 633, 'name': 'رودیان'}, + {'id': 634, 'name': 'شاهرود'}, + {'id': 635, 'name': 'کلاته خیج'}, + {'id': 636, 'name': 'مجن'}, + {'id': 637, 'name': 'ایوانکی'}, + {'id': 638, 'name': 'گرمسار'}, + {'id': 639, 'name': 'درجزین'}, + {'id': 640, 'name': 'شهمیرزاد'}, + {'id': 641, 'name': 'مهدی شهر'}, + {'id': 642, 'name': 'میامی'}], + 'en_name': 'semnan', + 'name': 'سمنان'}, + 16: {'cities': [{'id': 643, 'name': 'ایرانشهر'}, + {'id': 644, 'name': 'بزمان'}, + {'id': 645, 'name': 'بمپور'}, + {'id': 646, 'name': 'محمدان'}, + {'id': 647, 'name': 'چابهار'}, + {'id': 648, 'name': 'نگور'}, + {'id': 649, 'name': 'خاش'}, + {'id': 650, 'name': 'نوک آباد'}, + {'id': 651, 'name': 'گلمورتی'}, + {'id': 652, 'name': 'بنجار'}, + {'id': 653, 'name': 'زابل'}, + {'id': 654, 'name': 'زاهدان'}, + {'id': 655, 'name': 'نصرت آباد'}, + {'id': 656, 'name': 'زهک'}, + {'id': 657, 'name': 'جالق'}, + {'id': 658, 'name': 'سراوان'}, + {'id': 659, 'name': 'سیرکان'}, + {'id': 660, 'name': 'گشت'}, + {'id': 661, 'name': 'محمدی'}, + {'id': 662, 'name': 'پیشین'}, + {'id': 663, 'name': 'راسک'}, + {'id': 664, 'name': 'سرباز'}, + {'id': 665, 'name': 'سوران'}, + {'id': 666, 'name': 'هیدوچ'}, + {'id': 667, 'name': 'فنوج'}, + {'id': 668, 'name': 'قصرقند'}, + {'id': 669, 'name': 'زرآباد'}, + {'id': 670, 'name': 'کنارک'}, + {'id': 671, 'name': 'مهرستان'}, + {'id': 672, 'name': 'میرجاوه'}, + {'id': 673, 'name': 'اسپکه'}, + {'id': 674, 'name': 'بنت'}, + {'id': 675, 'name': 'نیک شهر'}, + {'id': 676, 'name': 'ادیمی'}, + {'id': 677, 'name': 'شهرک علی اکبر'}, + {'id': 678, 'name': 'محمدآباد'}, + {'id': 679, 'name': 'دوست محمد'}], + 'en_name': 'sistan-baluchestan', + 'name': 'سیستان و بلوچستان'}, + 17: {'cities': [{'id': 680, 'name': 'آباده'}, + {'id': 681, 'name': 'ایزدخواست'}, + {'id': 682, 'name': 'بهمن'}, + {'id': 683, 'name': 'سورمق'}, + {'id': 684, 'name': 'صغاد'}, + {'id': 685, 'name': 'ارسنجان'}, + {'id': 686, 'name': 'استهبان'}, + {'id': 687, 'name': 'ایج'}, + {'id': 688, 'name': 'رونیز'}, + {'id': 689, 'name': 'اقلید'}, + {'id': 690, 'name': 'حسن اباد'}, + {'id': 691, 'name': 'دژکرد'}, + {'id': 692, 'name': 'سده'}, + {'id': 693, 'name': 'بوانات'}, + {'id': 694, 'name': 'حسامی'}, + {'id': 695, 'name': 'کره ای'}, + {'id': 696, 'name': 'مزایجان'}, + {'id': 697, 'name': 'سعادت شهر'}, + {'id': 698, 'name': 'مادرسلیمان'}, + {'id': 699, 'name': 'باب انار'}, + {'id': 700, 'name': 'جهرم'}, + {'id': 701, 'name': 'خاوران'}, + {'id': 702, 'name': 'دوزه'}, + {'id': 703, 'name': 'قطب آباد'}, + {'id': 704, 'name': 'خرامه'}, + {'id': 705, 'name': 'سلطان شهر'}, + {'id': 706, 'name': 'صفاشهر'}, + {'id': 707, 'name': 'قادراباد'}, + {'id': 708, 'name': 'خنج'}, + {'id': 709, 'name': 'جنت شهر'}, + {'id': 710, 'name': 'داراب'}, + {'id': 711, 'name': 'دوبرجی'}, + {'id': 712, 'name': 'فدامی'}, + {'id': 713, 'name': 'کوپن'}, + {'id': 714, 'name': 'مصیری'}, + {'id': 715, 'name': 'حاجی آباد'}, + {'id': 716, 'name': 'دبیران'}, + {'id': 717, 'name': 'شهرپیر'}, + {'id': 718, 'name': 'اردکان'}, + {'id': 719, 'name': 'بیضا'}, + {'id': 720, 'name': 'هماشهر'}, + {'id': 721, 'name': 'سروستان'}, + {'id': 722, 'name': 'کوهنجان'}, + {'id': 723, 'name': 'خانه زنیان'}, + {'id': 724, 'name': 'داریان'}, + {'id': 725, 'name': 'زرقان'}, + {'id': 726, 'name': 'شهرصدرا'}, + {'id': 727, 'name': 'شیراز'}, + {'id': 728, 'name': 'لپویی'}, + {'id': 729, 'name': 'دهرم'}, + {'id': 730, 'name': 'فراشبند'}, + {'id': 731, 'name': 'نوجین'}, + {'id': 732, 'name': 'زاهدشهر'}, + {'id': 733, 'name': 'ششده'}, + {'id': 734, 'name': 'فسا'}, + {'id': 735, 'name': 'قره بلاغ'}, + {'id': 736, 'name': 'میانشهر'}, + {'id': 737, 'name': 'نوبندگان'}, + {'id': 738, 'name': 'فیروزآباد'}, + {'id': 739, 'name': 'میمند'}, + {'id': 740, 'name': 'افزر'}, + {'id': 741, 'name': 'امام شهر'}, + {'id': 742, 'name': 'قیر'}, + {'id': 743, 'name': 'کارزین (فتح آباد)'}, + {'id': 744, 'name': 'مبارک آباددیز'}, + {'id': 745, 'name': 'بالاده'}, + {'id': 746, 'name': 'خشت'}, + {'id': 747, 'name': 'قایمیه'}, + {'id': 748, 'name': 'کازرون'}, + {'id': 749, 'name': 'کنارتخته'}, + {'id': 750, 'name': 'نودان'}, + {'id': 751, 'name': 'کوار'}, + {'id': 752, 'name': 'گراش'}, + {'id': 753, 'name': 'اوز'}, + {'id': 754, 'name': 'بنارویه'}, + {'id': 755, 'name': 'بیرم'}, + {'id': 756, 'name': 'جویم'}, + {'id': 757, 'name': 'خور'}, + {'id': 758, 'name': 'عمادده'}, + {'id': 759, 'name': 'لار'}, + {'id': 760, 'name': 'لطیفی'}, + {'id': 761, 'name': 'اشکنان'}, + {'id': 762, 'name': 'اهل'}, + {'id': 763, 'name': 'علامرودشت'}, + {'id': 764, 'name': 'لامرد'}, + {'id': 765, 'name': 'خانیمن'}, + {'id': 766, 'name': 'رامجرد'}, + {'id': 767, 'name': 'سیدان'}, + {'id': 768, 'name': 'کامفیروز'}, + {'id': 769, 'name': 'مرودشت'}, + {'id': 770, 'name': 'بابامنیر'}, + {'id': 771, 'name': 'خومه زار'}, + {'id': 772, 'name': 'نورآباد'}, + {'id': 773, 'name': 'اسیر'}, + {'id': 774, 'name': 'خوزی'}, + {'id': 775, 'name': 'گله دار'}, + {'id': 776, 'name': 'مهر'}, + {'id': 777, 'name': 'وراوی'}, + {'id': 778, 'name': 'آباده طشک'}, + {'id': 779, 'name': 'قطرویه'}, + {'id': 780, 'name': 'مشکان'}, + {'id': 781, 'name': 'نی ریز'}], + 'en_name': 'fars', + 'name': 'فارس'}, + 18: {'cities': [{'id': 782, 'name': 'آبیک'}, + {'id': 783, 'name': 'خاکعلی'}, + {'id': 784, 'name': 'آبگرم'}, + {'id': 785, 'name': 'آوج'}, + {'id': 786, 'name': 'الوند'}, + {'id': 787, 'name': 'بیدستان'}, + {'id': 788, 'name': 'شریفیه'}, + {'id': 789, 'name': 'محمدیه'}, + {'id': 790, 'name': 'ارداق'}, + {'id': 791, 'name': 'بویین زهرا'}, + {'id': 792, 'name': 'دانسفهان'}, + {'id': 793, 'name': 'سگزآباد'}, + {'id': 794, 'name': 'شال'}, + {'id': 795, 'name': 'اسفرورین'}, + {'id': 796, 'name': 'تاکستان'}, + {'id': 797, 'name': 'خرمدشت'}, + {'id': 798, 'name': 'ضیاڈآباد'}, + {'id': 799, 'name': 'نرجه'}, + {'id': 800, 'name': 'اقبالیه'}, + {'id': 801, 'name': 'رازمیان'}, + {'id': 802, 'name': 'سیردان'}, + {'id': 803, 'name': 'قزوین'}, + {'id': 804, 'name': 'کوهین'}, + {'id': 805, 'name': 'محمودآبادنمونه'}, + {'id': 806, 'name': 'معلم کلایه'}], + 'en_name': 'qazvin', + 'name': 'قزوین'}, + 19: {'cities': [{'id': 807, 'name': 'جعفریه'}, + {'id': 808, 'name': 'دستجرد'}, + {'id': 809, 'name': 'سلفچگان'}, + {'id': 810, 'name': 'قم'}, + {'id': 811, 'name': 'قنوات'}, + {'id': 812, 'name': 'کهک'}], + 'en_name': 'qom', + 'name': 'قم'}, + 20: {'cities': [{'id': 813, 'name': 'آرمرده'}, + {'id': 814, 'name': 'بانه'}, + {'id': 815, 'name': 'بویین سفلی'}, + {'id': 816, 'name': 'کانی سور'}, + {'id': 817, 'name': 'بابارشانی'}, + {'id': 818, 'name': 'بیجار'}, + {'id': 819, 'name': 'پیرتاج'}, + {'id': 820, 'name': 'توپ آغاج'}, + {'id': 821, 'name': 'یاسوکند'}, + {'id': 822, 'name': 'بلبان آباد'}, + {'id': 823, 'name': 'دهگلان'}, + {'id': 824, 'name': 'دیواندره'}, + {'id': 825, 'name': 'زرینه'}, + {'id': 826, 'name': 'اورامان تخت'}, + {'id': 827, 'name': 'سروآباد'}, + {'id': 828, 'name': 'سقز'}, + {'id': 829, 'name': 'صاحب'}, + {'id': 830, 'name': 'سنندج'}, + {'id': 831, 'name': 'شویشه'}, + {'id': 832, 'name': 'دزج'}, + {'id': 833, 'name': 'دلبران'}, + {'id': 834, 'name': 'سریش آباد'}, + {'id': 835, 'name': 'قروه'}, + {'id': 836, 'name': 'کامیاران'}, + {'id': 837, 'name': 'موچش'}, + {'id': 838, 'name': 'برده رشه'}, + {'id': 839, 'name': 'چناره'}, + {'id': 840, 'name': 'کانی دینار'}, + {'id': 841, 'name': 'مریوان'}], + 'en_name': 'kurdistan', + 'name': 'کردستان'}, + 21: {'cities': [{'id': 842, 'name': 'ارزوییه'}, + {'id': 843, 'name': 'امین شهر'}, + {'id': 844, 'name': 'انار'}, + {'id': 845, 'name': 'بافت'}, + {'id': 846, 'name': 'بزنجان'}, + {'id': 847, 'name': 'بردسیر'}, + {'id': 848, 'name': 'دشتکار'}, + {'id': 849, 'name': 'گلزار'}, + {'id': 850, 'name': 'لاله زار'}, + {'id': 851, 'name': 'نگار'}, + {'id': 852, 'name': 'بروات'}, + {'id': 853, 'name': 'بم'}, + {'id': 854, 'name': 'بلوک'}, + {'id': 855, 'name': 'جبالبارز'}, + {'id': 856, 'name': 'جیرفت'}, + {'id': 857, 'name': 'درب بهشت'}, + {'id': 858, 'name': 'رابر'}, + {'id': 859, 'name': 'هنزا'}, + {'id': 860, 'name': 'راور'}, + {'id': 861, 'name': 'هجدک'}, + {'id': 862, 'name': 'بهرمان'}, + {'id': 863, 'name': 'رفسنجان'}, + {'id': 864, 'name': 'صفاییه'}, + {'id': 865, 'name': 'کشکوییه'}, + {'id': 866, 'name': 'مس سرچشمه'}, + {'id': 867, 'name': 'رودبار'}, + {'id': 868, 'name': 'زهکلوت'}, + {'id': 869, 'name': 'گنبکی'}, + {'id': 870, 'name': 'محمدآباد'}, + {'id': 871, 'name': 'خانوک'}, + {'id': 872, 'name': 'ریحان'}, + {'id': 873, 'name': 'زرند'}, + {'id': 874, 'name': 'یزدان شهر'}, + {'id': 875, 'name': 'بلورد'}, + {'id': 876, 'name': 'پاریز'}, + {'id': 877, 'name': 'خواجو شهر'}, + {'id': 878, 'name': 'زیدآباد'}, + {'id': 879, 'name': 'سیرجان'}, + {'id': 880, 'name': 'نجف شهر'}, + {'id': 881, 'name': 'هماشهر'}, + {'id': 882, 'name': 'جوزم'}, + {'id': 883, 'name': 'خاتون اباد'}, + {'id': 884, 'name': 'خورسند'}, + {'id': 885, 'name': 'دهج'}, + {'id': 886, 'name': 'شهربابک'}, + {'id': 887, 'name': 'دوساری'}, + {'id': 888, 'name': 'عنبرآباد'}, + {'id': 889, 'name': 'مردهک'}, + {'id': 890, 'name': 'فاریاب'}, + {'id': 891, 'name': 'فهرج'}, + {'id': 892, 'name': 'قلعه گنج'}, + {'id': 893, 'name': 'اختیارآباد'}, + {'id': 894, 'name': 'اندوهجرد'}, + {'id': 895, 'name': 'باغین'}, + {'id': 896, 'name': 'جوپار'}, + {'id': 897, 'name': 'چترود'}, + {'id': 898, 'name': 'راین'}, + {'id': 899, 'name': 'زنگی آباد'}, + {'id': 900, 'name': 'شهداد'}, + {'id': 901, 'name': 'کاظم آباد'}, + {'id': 902, 'name': 'کرمان'}, + {'id': 903, 'name': 'گلباف'}, + {'id': 904, 'name': 'ماهان'}, + {'id': 905, 'name': 'محی آباد'}, + {'id': 906, 'name': 'کوهبنان'}, + {'id': 907, 'name': 'کیانشهر'}, + {'id': 908, 'name': 'کهنوج'}, + {'id': 909, 'name': 'منوجان'}, + {'id': 910, 'name': 'نودژ'}, + {'id': 911, 'name': 'نرماشیر'}, + {'id': 912, 'name': 'نظام شهر'}], + 'en_name': 'kerman', + 'name': 'کرمان'}, + 22: {'cities': [{'id': 913, 'name': 'اسلام آبادغرب'}, + {'id': 914, 'name': 'حمیل'}, + {'id': 915, 'name': 'بانوره'}, + {'id': 916, 'name': 'باینگان'}, + {'id': 917, 'name': 'پاوه'}, + {'id': 918, 'name': 'نودشه'}, + {'id': 919, 'name': 'نوسود'}, + {'id': 920, 'name': 'ازگله'}, + {'id': 921, 'name': 'تازه آباد'}, + {'id': 922, 'name': 'جوانرود'}, + {'id': 923, 'name': 'ریجاب'}, + {'id': 924, 'name': 'کرند'}, + {'id': 925, 'name': 'گهواره'}, + {'id': 926, 'name': 'روانسر'}, + {'id': 927, 'name': 'شاهو'}, + {'id': 928, 'name': 'سرپل ذهاب'}, + {'id': 929, 'name': 'سطر'}, + {'id': 930, 'name': 'سنقر'}, + {'id': 931, 'name': 'صحنه'}, + {'id': 932, 'name': 'میان راهان'}, + {'id': 933, 'name': 'سومار'}, + {'id': 934, 'name': 'قصرشیرین'}, + {'id': 935, 'name': 'رباط'}, + {'id': 936, 'name': 'کرمانشاه'}, + {'id': 937, 'name': 'کوزران'}, + {'id': 938, 'name': 'هلشی'}, + {'id': 939, 'name': 'کنگاور'}, + {'id': 940, 'name': 'گودین'}, + {'id': 941, 'name': 'سرمست'}, + {'id': 942, 'name': 'گیلانغرب'}, + {'id': 943, 'name': 'بیستون'}, + {'id': 944, 'name': 'هرسین'}], + 'en_name': 'kermanshah', + 'name': 'کرمانشاه'}, + 23: {'cities': [{'id': 945, 'name': 'باشت'}, + {'id': 946, 'name': 'چیتاب'}, + {'id': 947, 'name': 'گراب سفلی'}, + {'id': 948, 'name': 'مادوان'}, + {'id': 949, 'name': 'مارگون'}, + {'id': 950, 'name': 'یاسوج'}, + {'id': 951, 'name': 'لیکک'}, + {'id': 952, 'name': 'چرام'}, + {'id': 953, 'name': 'سرفاریاب'}, + {'id': 954, 'name': 'پاتاوه'}, + {'id': 955, 'name': 'سی سخت'}, + {'id': 956, 'name': 'دهدشت'}, + {'id': 957, 'name': 'دیشموک'}, + {'id': 958, 'name': 'سوق'}, + {'id': 959, 'name': 'قلعه رییسی'}, + {'id': 960, 'name': 'دوگنبدان'}, + {'id': 961, 'name': 'لنده'}], + 'en_name': 'kohgiluyeh-boyer-ahmad', + 'name': 'کهگیلویه وبویراحمد'}, + 24: {'cities': [{'id': 962, 'name': 'آزادشهر'}, + {'id': 963, 'name': 'نگین شهر'}, + {'id': 964, 'name': 'نوده خاندوز'}, + {'id': 965, 'name': 'آق قلا'}, + {'id': 966, 'name': 'انبارآلوم'}, + {'id': 967, 'name': 'بندرگز'}, + {'id': 968, 'name': 'نوکنده'}, + {'id': 969, 'name': 'بندرترکمن'}, + {'id': 970, 'name': 'تاتارعلیا'}, + {'id': 971, 'name': 'خان ببین'}, + {'id': 972, 'name': 'دلند'}, + {'id': 973, 'name': 'رامیان'}, + {'id': 974, 'name': 'سنگدوین'}, + {'id': 975, 'name': 'علی اباد'}, + {'id': 976, 'name': 'فاضل آباد'}, + {'id': 977, 'name': 'مزرعه'}, + {'id': 978, 'name': 'کردکوی'}, + {'id': 979, 'name': 'فراغی'}, + {'id': 980, 'name': 'کلاله'}, + {'id': 981, 'name': 'گالیکش'}, + {'id': 982, 'name': 'جلین'}, + {'id': 983, 'name': 'سرخنکلاته'}, + {'id': 984, 'name': 'گرگان'}, + {'id': 985, 'name': 'سیمین شهر'}, + {'id': 986, 'name': 'گمیش تپه'}, + {'id': 987, 'name': 'اینچه برون'}, + {'id': 988, 'name': 'گنبدکاووس'}, + {'id': 989, 'name': 'مراوه'}, + {'id': 990, 'name': 'مینودشت'}], + 'en_name': 'golestan', + 'name': 'گلستان'}, + 25: {'cities': [{'id': 991, 'name': 'آستارا'}, + {'id': 992, 'name': 'لوندویل'}, + {'id': 993, 'name': 'آستانه اشرفیه'}, + {'id': 994, 'name': 'کیاشهر'}, + {'id': 995, 'name': 'املش'}, + {'id': 996, 'name': 'رانکوه'}, + {'id': 997, 'name': 'بندرانزلی'}, + {'id': 998, 'name': 'خشکبیجار'}, + {'id': 999, 'name': 'خمام'}, + {'id': 1000, 'name': 'رشت'}, + {'id': 1001, 'name': 'سنگر'}, + {'id': 1002, 'name': 'کوچصفهان'}, + {'id': 1003, 'name': 'لشت نشاء'}, + {'id': 1004, 'name': 'لولمان'}, + {'id': 1005, 'name': 'پره سر'}, + {'id': 1006, 'name': 'رضوانشهر'}, + {'id': 1007, 'name': 'بره سر'}, + {'id': 1008, 'name': 'توتکابن'}, + {'id': 1009, 'name': 'جیرنده'}, + {'id': 1010, 'name': 'رستم آباد'}, + {'id': 1011, 'name': 'رودبار'}, + {'id': 1012, 'name': 'لوشان'}, + {'id': 1013, 'name': 'منجیل'}, + {'id': 1014, 'name': 'چابکسر'}, + {'id': 1015, 'name': 'رحیم آباد'}, + {'id': 1016, 'name': 'رودسر'}, + {'id': 1017, 'name': 'کلاچای'}, + {'id': 1018, 'name': 'واجارگاه'}, + {'id': 1019, 'name': 'دیلمان'}, + {'id': 1020, 'name': 'سیاهکل'}, + {'id': 1021, 'name': 'احمدسرگوراب'}, + {'id': 1022, 'name': 'شفت'}, + {'id': 1023, 'name': 'صومعه سرا'}, + {'id': 1024, 'name': 'گوراب زرمیخ'}, + {'id': 1025, 'name': 'مرجقل'}, + {'id': 1026, 'name': 'اسالم'}, + {'id': 1027, 'name': 'چوبر'}, + {'id': 1028, 'name': 'حویق'}, + {'id': 1029, 'name': 'لیسار'}, + {'id': 1030, 'name': 'هشتپر (تالش)'}, + {'id': 1031, 'name': 'فومن'}, + {'id': 1032, 'name': 'ماسوله'}, + {'id': 1033, 'name': 'ماکلوان'}, + {'id': 1034, 'name': 'رودبنه'}, + {'id': 1035, 'name': 'لاهیجان'}, + {'id': 1036, 'name': 'اطاقور'}, + {'id': 1037, 'name': 'چاف و چمخاله'}, + {'id': 1038, 'name': 'شلمان'}, + {'id': 1039, 'name': 'کومله'}, + {'id': 1040, 'name': 'لنگرود'}, + {'id': 1041, 'name': 'بازار جمعه'}, + {'id': 1042, 'name': 'ماسال'}], + 'en_name': 'gilan', + 'name': 'گیلان'}, + 26: {'cities': [{'id': 1043, 'name': 'ازنا'}, + {'id': 1044, 'name': 'مومن آباد'}, + {'id': 1045, 'name': 'الیگودرز'}, + {'id': 1046, 'name': 'شول آباد'}, + {'id': 1047, 'name': 'اشترینان'}, + {'id': 1048, 'name': 'بروجرد'}, + {'id': 1049, 'name': 'پلدختر'}, + {'id': 1050, 'name': 'معمولان'}, + {'id': 1051, 'name': 'بیران شهر'}, + {'id': 1052, 'name': 'خرم آباد'}, + {'id': 1053, 'name': 'زاغه'}, + {'id': 1054, 'name': 'سپیددشت'}, + {'id': 1055, 'name': 'نورآباد'}, + {'id': 1056, 'name': 'هفت چشمه'}, + {'id': 1057, 'name': 'چالانچولان'}, + {'id': 1058, 'name': 'دورود'}, + {'id': 1059, 'name': 'سراب دوره'}, + {'id': 1060, 'name': 'ویسیان'}, + {'id': 1061, 'name': 'چقابل'}, + {'id': 1062, 'name': 'الشتر'}, + {'id': 1063, 'name': 'فیروزآباد'}, + {'id': 1064, 'name': 'درب گنبد'}, + {'id': 1065, 'name': 'کوهدشت'}, + {'id': 1066, 'name': 'کوهنانی'}, + {'id': 1067, 'name': 'گراب'}], + 'en_name': 'lorestan', + 'name': 'لرستان'}, + 27: {'cities': [{'id': 1068, 'name': 'آمل'}, + {'id': 1069, 'name': 'امامزاده عبدالله'}, + {'id': 1070, 'name': 'دابودشت'}, + {'id': 1071, 'name': 'رینه'}, + {'id': 1072, 'name': 'گزنک'}, + {'id': 1073, 'name': 'امیرکلا'}, + {'id': 1074, 'name': 'بابل'}, + {'id': 1075, 'name': 'خوش رودپی'}, + {'id': 1076, 'name': 'زرگرمحله'}, + {'id': 1077, 'name': 'گتاب'}, + {'id': 1078, 'name': 'گلوگاه'}, + {'id': 1079, 'name': 'مرزیکلا'}, + {'id': 1080, 'name': 'بابلسر'}, + {'id': 1081, 'name': 'بهنمیر'}, + {'id': 1082, 'name': 'هادی شهر'}, + {'id': 1083, 'name': 'بهشهر'}, + {'id': 1084, 'name': 'خلیل شهر'}, + {'id': 1085, 'name': 'رستمکلا'}, + {'id': 1086, 'name': 'تنکابن'}, + {'id': 1087, 'name': 'خرم آباد'}, + {'id': 1088, 'name': 'شیرود'}, + {'id': 1089, 'name': 'نشتارود'}, + {'id': 1090, 'name': 'جویبار'}, + {'id': 1091, 'name': 'کوهی خیل'}, + {'id': 1092, 'name': 'چالوس'}, + {'id': 1093, 'name': 'مرزن آباد'}, + {'id': 1094, 'name': 'هچیرود'}, + {'id': 1095, 'name': 'رامسر'}, + {'id': 1096, 'name': 'کتالم وسادات شهر'}, + {'id': 1097, 'name': 'پایین هولار'}, + {'id': 1098, 'name': 'ساری'}, + {'id': 1099, 'name': 'فریم'}, + {'id': 1100, 'name': 'کیاسر'}, + {'id': 1101, 'name': 'آلاشت'}, + {'id': 1102, 'name': 'پل سفید'}, + {'id': 1103, 'name': 'زیرآب'}, + {'id': 1104, 'name': 'شیرگاه'}, + {'id': 1105, 'name': 'کیاکلا'}, + {'id': 1106, 'name': 'سلمان شهر'}, + {'id': 1107, 'name': 'عباس اباد'}, + {'id': 1108, 'name': 'کلارآباد'}, + {'id': 1109, 'name': 'فریدونکنار'}, + {'id': 1110, 'name': 'ارطه'}, + {'id': 1111, 'name': 'قایم شهر'}, + {'id': 1112, 'name': 'کلاردشت'}, + {'id': 1113, 'name': 'گلوگاه'}, + {'id': 1114, 'name': 'سرخرود'}, + {'id': 1115, 'name': 'محمودآباد'}, + {'id': 1116, 'name': 'سورک'}, + {'id': 1117, 'name': 'نکا'}, + {'id': 1118, 'name': 'ایزدشهر'}, + {'id': 1119, 'name': 'بلده'}, + {'id': 1120, 'name': 'چمستان'}, + {'id': 1121, 'name': 'رویان'}, + {'id': 1122, 'name': 'نور'}, + {'id': 1123, 'name': 'پول'}, + {'id': 1124, 'name': 'کجور'}, + {'id': 1125, 'name': 'نوشهر'}], + 'en_name': 'mazandaran', + 'name': 'مازندران'}, + 28: {'cities': [{'id': 1126, 'name': 'آشتیان'}, + {'id': 1127, 'name': 'اراک'}, + {'id': 1128, 'name': 'داودآباد'}, + {'id': 1129, 'name': 'ساروق'}, + {'id': 1130, 'name': 'کارچان'}, + {'id': 1131, 'name': 'تفرش'}, + {'id': 1132, 'name': 'خمین'}, + {'id': 1133, 'name': 'قورچی باشی'}, + {'id': 1134, 'name': 'جاورسیان'}, + {'id': 1135, 'name': 'خنداب'}, + {'id': 1136, 'name': 'دلیجان'}, + {'id': 1137, 'name': 'نراق'}, + {'id': 1138, 'name': 'پرندک'}, + {'id': 1139, 'name': 'خشکرود'}, + {'id': 1140, 'name': 'رازقان'}, + {'id': 1141, 'name': 'زاویه'}, + {'id': 1142, 'name': 'مامونیه'}, + {'id': 1143, 'name': 'آوه'}, + {'id': 1144, 'name': 'ساوه'}, + {'id': 1145, 'name': 'غرق آباد'}, + {'id': 1146, 'name': 'نوبران'}, + {'id': 1147, 'name': 'آستانه'}, + {'id': 1148, 'name': 'توره'}, + {'id': 1149, 'name': 'شازند'}, + {'id': 1150, 'name': 'شهباز'}, + {'id': 1151, 'name': 'مهاجران'}, + {'id': 1152, 'name': 'هندودر'}, + {'id': 1153, 'name': 'خنجین'}, + {'id': 1154, 'name': 'فرمهین'}, + {'id': 1155, 'name': 'کمیجان'}, + {'id': 1156, 'name': 'میلاجرد'}, + {'id': 1157, 'name': 'محلات'}, + {'id': 1158, 'name': 'نیمور'}], + 'en_name': 'markazi', + 'name': 'مرکزی'}, + 29: {'cities': [{'id': 1159, 'name': 'ابوموسی'}, + {'id': 1160, 'name': 'بستک'}, + {'id': 1161, 'name': 'جناح'}, + {'id': 1162, 'name': 'سردشت'}, + {'id': 1163, 'name': 'گوهران'}, + {'id': 1164, 'name': 'بندرعباس'}, + {'id': 1165, 'name': 'تازیان پایین'}, + {'id': 1166, 'name': 'تخت'}, + {'id': 1167, 'name': 'فین'}, + {'id': 1168, 'name': 'قلعه قاضی'}, + {'id': 1169, 'name': 'بندرلنگه'}, + {'id': 1170, 'name': 'چارک'}, + {'id': 1171, 'name': 'کنگ'}, + {'id': 1172, 'name': 'کیش'}, + {'id': 1173, 'name': 'لمزان'}, + {'id': 1174, 'name': 'پارسیان'}, + {'id': 1175, 'name': 'دشتی'}, + {'id': 1176, 'name': 'کوشکنار'}, + {'id': 1177, 'name': 'بندرجاسک'}, + {'id': 1178, 'name': 'حاجی اباد'}, + {'id': 1179, 'name': 'سرگز'}, + {'id': 1180, 'name': 'فارغان'}, + {'id': 1181, 'name': 'خمیر'}, + {'id': 1182, 'name': 'رویدر'}, + {'id': 1183, 'name': 'بیکاء'}, + {'id': 1184, 'name': 'دهبارز'}, + {'id': 1185, 'name': 'زیارتعلی'}, + {'id': 1186, 'name': 'سیریک'}, + {'id': 1187, 'name': 'کوهستک'}, + {'id': 1188, 'name': 'گروک'}, + {'id': 1189, 'name': 'درگهان'}, + {'id': 1190, 'name': 'سوزا'}, + {'id': 1191, 'name': 'قشم'}, + {'id': 1192, 'name': 'هرمز'}, + {'id': 1193, 'name': 'تیرور'}, + {'id': 1194, 'name': 'سندرک'}, + {'id': 1195, 'name': 'میناب'}, + {'id': 1196, 'name': 'هشتبندی'}], + 'en_name': 'hormozgan', + 'name': 'هرمزگان'}, + 30: {'cities': [{'id': 1197, 'name': 'آجین'}, + {'id': 1198, 'name': 'اسدآباد'}, + {'id': 1199, 'name': 'بهار'}, + {'id': 1200, 'name': 'صالح آباد'}, + {'id': 1201, 'name': 'لالجین'}, + {'id': 1202, 'name': 'مهاجران'}, + {'id': 1203, 'name': 'تویسرکان'}, + {'id': 1204, 'name': 'سرکان'}, + {'id': 1205, 'name': 'فرسفج'}, + {'id': 1206, 'name': 'دمق'}, + {'id': 1207, 'name': 'رزن'}, + {'id': 1208, 'name': 'قروه درجزین'}, + {'id': 1209, 'name': 'فامنین'}, + {'id': 1210, 'name': 'شیرین سو'}, + {'id': 1211, 'name': 'کبودرآهنگ'}, + {'id': 1212, 'name': 'گل تپه'}, + {'id': 1213, 'name': 'ازندریان'}, + {'id': 1214, 'name': 'جوکار'}, + {'id': 1215, 'name': 'زنگنه'}, + {'id': 1216, 'name': 'سامن'}, + {'id': 1217, 'name': 'ملایر'}, + {'id': 1218, 'name': 'برزول'}, + {'id': 1219, 'name': 'فیروزان'}, + {'id': 1220, 'name': 'گیان'}, + {'id': 1221, 'name': 'نهاوند'}, + {'id': 1222, 'name': 'جورقان'}, + {'id': 1223, 'name': 'قهاوند'}, + {'id': 1224, 'name': 'مریانج'}, + {'id': 1225, 'name': 'همدان'}], + 'en_name': 'hamadan', + 'name': 'همدان'}, + 31: {'cities': [{'id': 1226, 'name': 'ابرکوه'}, + {'id': 1227, 'name': 'مهردشت'}, + {'id': 1228, 'name': 'احمدآباد'}, + {'id': 1229, 'name': 'اردکان'}, + {'id': 1230, 'name': 'عقدا'}, + {'id': 1231, 'name': 'اشکذر'}, + {'id': 1232, 'name': 'خضرآباد'}, + {'id': 1233, 'name': 'بافق'}, + {'id': 1234, 'name': 'بهاباد'}, + {'id': 1235, 'name': 'تفت'}, + {'id': 1236, 'name': 'نیر'}, + {'id': 1237, 'name': 'مروست'}, + {'id': 1238, 'name': 'هرات'}, + {'id': 1239, 'name': 'مهریز'}, + {'id': 1240, 'name': 'بفروییه'}, + {'id': 1241, 'name': 'میبد'}, + {'id': 1242, 'name': 'ندوشن'}, + {'id': 1243, 'name': 'حمیدیا'}, + {'id': 1244, 'name': 'زارچ'}, + {'id': 1245, 'name': 'شاهدیه'}, + {'id': 1246, 'name': 'یزد'}], + 'en_name': 'yazd', + 'name': 'یزد'} +} + +class State: + def __init__(self): + self.provinces = PROVINCES + + def province_list(self): + return self.provinces + + def get_city_by_id(self, city_id): + for province_id, province in self.provinces.items(): + for city in province.get('cities'): + if city.get('id') == city_id: + return city.get('name') + return None + + def get_province_by_id(self, province_id): + return self.provinces.get(province_id).get('name') + + def validate_city(self, province_id, city_id): + cities_id = [item.get('id') for item in self.provinces.get(province_id).get('cities')] + return True if city_id in cities_id else False + + def validate_province(self, province_id): + return True if province_id in self.provinces.keys() else False + +state = State() diff --git a/apps/users/views.py b/apps/users/views.py index 7d99456..0ffbc48 100644 --- a/apps/users/views.py +++ b/apps/users/views.py @@ -6,10 +6,12 @@ from django.utils import timezone from oauth2_provider.contrib.rest_framework import IsAuthenticatedOrTokenHasScope from rest_framework import generics, status from rest_framework.response import Response +from rest_framework.views import APIView from apps.gooyal_oauth2.rest_framework import IsAuthenticatedOrTokenMatchesOASRequirements from apps.users.forms import OTPAuthenticationForm from apps.users.models import User +from apps.users.provinces_and_cities import State from apps.users.serializers import PublicUserSerializer, AccountSerializer, RequestOTPSerializer, \ ChangePasswordSerializer @@ -97,3 +99,10 @@ class OTPLoginView(LoginView): Display the login form and handle the login action. """ form_class = OTPAuthenticationForm + + +class ProvinceApiView(APIView): + permission_classes = [permissions.AllowAny] + + def get(self, request): + return Response(State().province_list()) diff --git a/gooyal_accounts/urls.py b/gooyal_accounts/urls.py index 5363459..603dff1 100644 --- a/gooyal_accounts/urls.py +++ b/gooyal_accounts/urls.py @@ -24,7 +24,7 @@ from django.contrib import admin from apps.transactions.views import TransactionList, TransactionDetail, TransactionPay, TransactionReceipt, \ WithdrawVerify, WithdrawSubmit, DepositSubmit, DepositVerify from apps.users.views import UserListView, UserDetailView, AccountView, RequestOTPView, ChangePasswordView, \ - OTPLoginView, home + OTPLoginView, home, ProvinceApiView from django.contrib.auth import urls as auth_urls # Setup the URLs and include login URLs for the browsable API. @@ -45,6 +45,7 @@ urlpatterns = [ path('users//', UserDetailView.as_view(), name='user_detail'), path('request_otp/', RequestOTPView.as_view(), name='register'), path('change_password/', ChangePasswordView.as_view(), name='change_password'), + path('province', ProvinceApiView.as_view(), name='province'), path('transactions/', TransactionList.as_view(), name='transactions'), path('transactions/', TransactionDetail.as_view(), name='transaction_detail'),