added establishment and collection transfer.py files
This commit is contained in:
parent
cf7184d7ac
commit
018d9f6557
42
apps/collection/transfer.py
Normal file
42
apps/collection/transfer.py
Normal file
|
|
@ -0,0 +1,42 @@
|
||||||
|
"""
|
||||||
|
Структура fields:
|
||||||
|
key - поле в таблице postgres
|
||||||
|
value - поле или группа полей в таблице legacy
|
||||||
|
|
||||||
|
В случае передачи группы полей каждое поле представляет собой кортеж, где:
|
||||||
|
field[0] - название аргумента
|
||||||
|
field[1] - название поля в таблице legacy
|
||||||
|
Опционально: field[2] - тип данных для преобразования
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
card = {
|
||||||
|
"Collection": {
|
||||||
|
"dependencies": ("Country", ),
|
||||||
|
"fields": {
|
||||||
|
"Collections": {
|
||||||
|
# нету аналогов для полей start и end
|
||||||
|
"name": "title",
|
||||||
|
"slug": "slug",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"relations": {
|
||||||
|
"country": "Country",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Guide": {
|
||||||
|
"dependencies": ("Collection", ),
|
||||||
|
"fields": {
|
||||||
|
"Guides": {
|
||||||
|
# нету аналогов для полей start и end
|
||||||
|
"name": "title"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"relations": {
|
||||||
|
"parent": "Guide",
|
||||||
|
"collection": "Collection"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
used_apps = ("location", )
|
||||||
70
apps/establishment/transfer.py
Normal file
70
apps/establishment/transfer.py
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
"""
|
||||||
|
Структура fields:
|
||||||
|
key - поле в таблице postgres
|
||||||
|
value - поле или группа полей в таблице legacy
|
||||||
|
|
||||||
|
В случае передачи группы полей каждое поле представляет собой кортеж, где:
|
||||||
|
field[0] - название аргумента
|
||||||
|
field[1] - название поля в таблице legacy
|
||||||
|
Опционально: field[2] - тип данных для преобразования
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
card = {
|
||||||
|
"Establishment": {
|
||||||
|
"dependencies": ("Address", "Collection", ),
|
||||||
|
# нету аналогов для establishment_type, establishment_subtypes, schedule, comments, tags
|
||||||
|
"fields": {
|
||||||
|
"Establishments": {
|
||||||
|
"name": "name",
|
||||||
|
"slug": "slug"
|
||||||
|
},
|
||||||
|
"EstablishmentInfos": {
|
||||||
|
"website": "website",
|
||||||
|
"facebook": "facebook",
|
||||||
|
"twitter": "twitter",
|
||||||
|
"lafourchette": "lafourchette",
|
||||||
|
"booking": "booking_url"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"relations": {
|
||||||
|
"address": "Address",
|
||||||
|
# "establishment_type": "EstablishmentType",
|
||||||
|
# "establishment_subtypes": "EstablishmentSubType",
|
||||||
|
"collections": "Collection",
|
||||||
|
# "schedule": "Timetable",
|
||||||
|
"award": "Award",
|
||||||
|
# "tags": "MetaDataContent",
|
||||||
|
"reviews": "Review",
|
||||||
|
# "comments": "Comment",
|
||||||
|
# "favorites": "Favorites"
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Menu": {
|
||||||
|
"dependencies": ("Establishment", ),
|
||||||
|
"fields": {
|
||||||
|
"Menus": {
|
||||||
|
"category": ("name", "TJSONField")
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"relations": {
|
||||||
|
"establishment": "Establishment"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ContactPhone": {
|
||||||
|
"dependencies": ("Establishment", ),
|
||||||
|
"fields": {
|
||||||
|
"Establishments": {
|
||||||
|
"phone": "phone"
|
||||||
|
},
|
||||||
|
"relations": {
|
||||||
|
"establishment": "Establishment"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
used_apps = ("review", "location", "collection", "main", "timetable", "favorites", "comment", )
|
||||||
|
|
@ -91,3 +91,319 @@ class Locations(models.Model):
|
||||||
class Meta:
|
class Meta:
|
||||||
managed = False
|
managed = False
|
||||||
db_table = 'locations'
|
db_table = 'locations'
|
||||||
|
|
||||||
|
|
||||||
|
class Collections(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
title = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
tag_name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
slug = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
site_id = models.IntegerField(blank=True, null=True)
|
||||||
|
active = models.IntegerField(blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
attachment_file_name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
attachment_content_type = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
attachment_file_size = models.IntegerField(blank=True, null=True)
|
||||||
|
attachment_updated_at = models.DateTimeField(blank=True, null=True)
|
||||||
|
geometries = models.CharField(max_length=1024, blank=True, null=True)
|
||||||
|
aasm_state = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'collections'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# class CollectionEvents(MigrateMixin):
|
||||||
|
# using = 'legacy'
|
||||||
|
#
|
||||||
|
# account = models.ForeignKey(Accounts, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# account_collection = models.ForeignKey(AccountCollections, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# possible_dates = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
# final_date = models.DateTimeField(blank=True, null=True)
|
||||||
|
# establishment = models.ForeignKey('Establishments', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# created_at = models.DateTimeField()
|
||||||
|
# updated_at = models.DateTimeField()
|
||||||
|
#
|
||||||
|
# class Meta:
|
||||||
|
# managed = False
|
||||||
|
# db_table = 'collection_events'
|
||||||
|
|
||||||
|
|
||||||
|
# class CollectionEventAvailabilities(MigrateMixin):
|
||||||
|
# using = 'legacy'
|
||||||
|
#TODO: collection_event - внешний ключ к CollectionEvents, которая имеет внешний ключ к Accounts
|
||||||
|
|
||||||
|
# collection_event = models.ForeignKey('CollectionEvents', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# establishment = models.ForeignKey('Establishments', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# email_address = models.ForeignKey('EmailAddresses', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# date = models.DateTimeField(blank=True, null=True)
|
||||||
|
# state = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
# created_at = models.DateTimeField()
|
||||||
|
# updated_at = models.DateTimeField()
|
||||||
|
#
|
||||||
|
# class Meta:
|
||||||
|
# managed = False
|
||||||
|
# db_table = 'collection_event_availabilities'
|
||||||
|
|
||||||
|
|
||||||
|
class Guides(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
title = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
vintage = models.IntegerField(blank=True, null=True)
|
||||||
|
slug = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
state = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
site_id = models.IntegerField(blank=True, null=True)
|
||||||
|
inserter_field = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
items_count = models.IntegerField(blank=True, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'guides'
|
||||||
|
|
||||||
|
|
||||||
|
class GuideAds(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
nb_pages = models.IntegerField(blank=True, null=True)
|
||||||
|
nb_right_pages = models.IntegerField(blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
guide_ad_node_id = models.IntegerField(blank=True, null=True)
|
||||||
|
type = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'guide_ads'
|
||||||
|
|
||||||
|
|
||||||
|
class GuideFilters(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
year = models.TextField(blank=True, null=True)
|
||||||
|
establishment_type = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
countries = models.TextField(blank=True, null=True)
|
||||||
|
regions = models.TextField(blank=True, null=True)
|
||||||
|
subregions = models.TextField(blank=True, null=True)
|
||||||
|
wine_regions = models.TextField(blank=True, null=True)
|
||||||
|
wine_classifications = models.TextField(blank=True, null=True)
|
||||||
|
wine_colors = models.TextField(blank=True, null=True)
|
||||||
|
wine_types = models.TextField(blank=True, null=True)
|
||||||
|
max_mark = models.FloatField(blank=True, null=True)
|
||||||
|
min_mark = models.FloatField(blank=True, null=True)
|
||||||
|
marks_only = models.IntegerField(blank=True, null=True)
|
||||||
|
locales = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
states = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
guide_id = models.IntegerField(blank=True, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'guide_filters'
|
||||||
|
|
||||||
|
|
||||||
|
class GuideSections(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
type = models.CharField(max_length=255)
|
||||||
|
key_name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
value_name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
right = models.IntegerField(blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
|
||||||
|
|
||||||
|
# class GuideElements(MigrateMixin):
|
||||||
|
# using = 'legacy'
|
||||||
|
#
|
||||||
|
# type = models.CharField(max_length=255)
|
||||||
|
# establishment = models.ForeignKey(Establishments, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# review = models.ForeignKey('Reviews', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# review_text = models.ForeignKey('ReviewTexts', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# wine_region = models.ForeignKey('WineLocations', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# wine = models.ForeignKey('Products', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# color = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
# order_number = models.IntegerField(blank=True, null=True)
|
||||||
|
# guide_ad = models.ForeignKey(GuideAds, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# city = models.ForeignKey(Cities, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# section = models.ForeignKey('GuideSections', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# guide_id = models.IntegerField(blank=True, null=True)
|
||||||
|
# parent_id = models.IntegerField(blank=True, null=True)
|
||||||
|
# lft = models.IntegerField()
|
||||||
|
# rgt = models.IntegerField()
|
||||||
|
# depth = models.IntegerField()
|
||||||
|
# children_count = models.IntegerField()
|
||||||
|
# created_at = models.DateTimeField()
|
||||||
|
# updated_at = models.DateTimeField()
|
||||||
|
#
|
||||||
|
# class Meta:
|
||||||
|
# managed = False
|
||||||
|
# db_table = 'guide_elements'
|
||||||
|
|
||||||
|
|
||||||
|
class Establishments(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
name = models.CharField(max_length=255)
|
||||||
|
index_name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
slug = models.CharField(unique=True, max_length=255, blank=True, null=True)
|
||||||
|
phone = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
fax = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
type = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
location = models.ForeignKey('Locations', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
unique_key = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
filemaker_id = models.IntegerField(unique=True, blank=True, null=True)
|
||||||
|
aut_mysql_id = models.IntegerField(unique=True, blank=True, null=True)
|
||||||
|
fra_encima_id = models.IntegerField(blank=True, null=True)
|
||||||
|
ca_import_id = models.IntegerField(blank=True, null=True)
|
||||||
|
ch_import_id = models.IntegerField(blank=True, null=True)
|
||||||
|
be_ezpublish_id = models.IntegerField(blank=True, null=True)
|
||||||
|
au_import_id = models.IntegerField(blank=True, null=True)
|
||||||
|
lux_import_id = models.IntegerField(blank=True, null=True)
|
||||||
|
hun_import_id = models.IntegerField(blank=True, null=True)
|
||||||
|
deu_import_id = models.IntegerField(blank=True, null=True)
|
||||||
|
win_import_id = models.TextField(blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
state = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
manager_revised_at = models.DateTimeField(blank=True, null=True)
|
||||||
|
cover_id = models.IntegerField(blank=True, null=True)
|
||||||
|
parent_id = models.IntegerField(blank=True, null=True)
|
||||||
|
admin_updated_at = models.DateTimeField(blank=True, null=True)
|
||||||
|
admin_updated_by = models.IntegerField(blank=True, null=True)
|
||||||
|
company_id = models.IntegerField(blank=True, null=True)
|
||||||
|
production_type = models.CharField(max_length=3000, blank=True, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'establishments'
|
||||||
|
|
||||||
|
|
||||||
|
# class EstablishmentAssets(MigrateMixin):
|
||||||
|
# using = 'legacy'
|
||||||
|
#
|
||||||
|
# establishment = models.ForeignKey('Establishments', models.DO_NOTHING)
|
||||||
|
# account = models.ForeignKey(Accounts, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# menu_id = models.IntegerField(blank=True, null=True)
|
||||||
|
# type = models.CharField(max_length=64)
|
||||||
|
# scope = models.CharField(max_length=32)
|
||||||
|
# created_at = models.DateTimeField()
|
||||||
|
# updated_at = models.DateTimeField()
|
||||||
|
# attachment_file_name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
# attachment_content_type = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
# geometries = models.CharField(max_length=1024, blank=True, null=True)
|
||||||
|
# attachment_file_size = models.IntegerField(blank=True, null=True)
|
||||||
|
# attachment_updated_at = models.DateTimeField(blank=True, null=True)
|
||||||
|
#
|
||||||
|
# class Meta:
|
||||||
|
# managed = False
|
||||||
|
# db_table = 'establishment_assets'
|
||||||
|
|
||||||
|
class EstablishmentBacklinks(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
establishment = models.ForeignKey('Establishments', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
partnership_name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
partnership_icon = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
backlink_url = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
type = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
starting_date = models.DateField(blank=True, null=True)
|
||||||
|
expiry_date = models.DateField(blank=True, null=True)
|
||||||
|
price_per_month = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'establishment_backlinks'
|
||||||
|
|
||||||
|
|
||||||
|
# class EstablishmentCollections(MigrateMixin):
|
||||||
|
# using = 'legacy'
|
||||||
|
#
|
||||||
|
# establishment = models.ForeignKey('Establishments', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# account_collection = models.ForeignKey(AccountCollections, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# created_at = models.DateTimeField()
|
||||||
|
# updated_at = models.DateTimeField()
|
||||||
|
#
|
||||||
|
# class Meta:
|
||||||
|
# managed = False
|
||||||
|
# db_table = 'establishment_collections'
|
||||||
|
|
||||||
|
class EstablishmentHolidays(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
start_date = models.DateField(blank=True, null=True)
|
||||||
|
end_date = models.DateField(blank=True, null=True)
|
||||||
|
establishment_id = models.IntegerField(blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'establishment_holidays'
|
||||||
|
|
||||||
|
|
||||||
|
class EstablishmentInfos(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
establishment = models.ForeignKey('Establishments', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
email = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
website = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
facebook = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
twitter = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
lafourchette = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
pub = models.IntegerField(blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
booking_url = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
nb_slot = models.IntegerField(blank=True, null=True)
|
||||||
|
booking_enabled = models.IntegerField(blank=True, null=True)
|
||||||
|
guestonline_id = models.IntegerField(blank=True, null=True)
|
||||||
|
guestonline_auth_token = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'establishment_infos'
|
||||||
|
|
||||||
|
|
||||||
|
# class EstablishmentMerchandises(MigrateMixin):
|
||||||
|
# using = 'legacy'
|
||||||
|
#
|
||||||
|
# establishment = models.ForeignKey('Establishments', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
|
||||||
|
#TODO: модели Merchandises нету в гугл таблице Check Migrations
|
||||||
|
|
||||||
|
# merchandise = models.ForeignKey('Merchandises', models.DO_NOTHING, blank=True, null=True)
|
||||||
|
# gifted = models.IntegerField(blank=True, null=True)
|
||||||
|
# quantity = models.IntegerField(blank=True, null=True)
|
||||||
|
# created_at = models.DateTimeField()
|
||||||
|
# updated_at = models.DateTimeField()
|
||||||
|
#
|
||||||
|
# class Meta:
|
||||||
|
# managed = False
|
||||||
|
# db_table = 'establishment_merchandises'
|
||||||
|
|
||||||
|
|
||||||
|
class Menus(MigrateMixin):
|
||||||
|
using = 'legacy'
|
||||||
|
|
||||||
|
establishment = models.ForeignKey(Establishments, models.DO_NOTHING, blank=True, null=True)
|
||||||
|
name = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
timing = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
price = models.FloatField(blank=True, null=True)
|
||||||
|
currency = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
drinks = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
served_on_offdays = models.CharField(max_length=255, blank=True, null=True)
|
||||||
|
created_at = models.DateTimeField()
|
||||||
|
updated_at = models.DateTimeField()
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
managed = False
|
||||||
|
db_table = 'menus'
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user