kwork-poizonstore/store/management/commands/create_initial_data.py
phzhik 3a6b06d223 + time_to_buy & buy_time_remaining fields
+ Category: hierarchy, removed slugs & added comission per category
* Promocode value in rubles instead of percentage
* Cleanup in GlobalSettings routes
2023-08-18 16:22:32 +04:00

142 lines
3.3 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from django.core.management import BaseCommand
from tqdm import tqdm
from store.models import Category, PaymentMethod
category_names = {
"Обувь": [
"Кроссовки",
"Кеды",
"Пляжная обувь",
"Туфли",
"Босоножки",
"Сандвли",
"Лоаферы",
"Мокасины",
"Ботинки",
"Полуботинки",
"Сапоги",
"Домашняя обувь",
"Другое",
],
"Верхняя одежда": [
"Куртка летняя",
"Куртка зимняя",
"Худи",
"Толстовка",
"Футболка",
"Майка",
"Лонгслив",
"Рубашка",
"Платье",
"Жилетка",
"Свитер",
"Топ",
"Другое",
],
"Нижнее белье": [
"Брюки",
"Штаны",
"Джинсы",
"Леггинсы",
"Шорты",
"Юбка",
"Колготки",
"Другое",
],
"Сумки": [
"Женская сумка",
"Мужская сумка",
"Рюкзак",
"Кошелек",
"Визитница",
"Клатч",
"Шоппер",
"Другое",
],
"Косметика": [
"Для лица",
"Для тела",
"Для губ",
"Для ресниц",
"Для волос",
"Для бровей",
"Для рук",
"Для ног",
"Другое",
],
"Аксессуары": [
"Шарф",
"Шапка",
"Кепка",
"Очки",
"Украшения",
"Перчатки",
"Носки",
"Нижнее белье",
"Другое",
],
"Техника": [
"Телефон",
"Планшет",
"Ноутбук",
"Приставка",
"Фен",
"Скайлер",
"Пылесос",
"Увлажнитель",
"Бытовая техника",
"Другое",
],
"Часы": ["Механические", "Электронные"],
"Игрушки": ["Lego", "Фигурка", "Мягкая", "Кукла", "Набор", "Другое"],
"Товары для дома": ["Полотенце", "Ковер", "Набор", "Косметичка", "Другое"],
"Еда и напитки": ["Еда", "Напиток"],
"Другое": [],
}
payment_methods = {
"alfa": {
"name": "Альфабанк",
"cardnumber": "",
"requisites": ""
},
"ralf": {
"name": "Райффайзен Банк",
"cardnumber": "",
"requisites": ""
},
"tink": {
"name": "Тинькофф",
"cardnumber": "",
"requisites": ""
}
}
class Command(BaseCommand):
help = ''' Create root categories '''
def create_categories(self):
for cat_name, subcat_names in tqdm(category_names.items(), desc="Creating categories"):
category, _ = Category.objects.get_or_create(name=cat_name, parent=None)
for subcat_name in subcat_names:
Category.objects.get_or_create(name=subcat_name, parent_id=category.id)
def create_payment_types(self):
for slug, data in tqdm(payment_methods.items(), desc="Creating payment methods"):
PaymentMethod.objects.get_or_create(slug=slug, defaults=data)
def handle(self, *args, **kwargs):
self.create_categories()
self.create_payment_types()