mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-16 11:13:23 +00:00
WIP: Begin SAS migration script
This commit is contained in:
parent
9bccc6a5d1
commit
b8c9aa4e7f
72
migrate.py
72
migrate.py
@ -25,6 +25,7 @@ from counter.models import Customer, Counter, Selling, Refilling, Product, Produ
|
|||||||
from subscription.models import Subscription, Subscriber
|
from subscription.models import Subscription, Subscriber
|
||||||
from eboutic.models import Invoice, InvoiceItem
|
from eboutic.models import Invoice, InvoiceItem
|
||||||
from accounting.models import BankAccount, ClubAccount, GeneralJournal, Operation, AccountingType, Company, SimplifiedAccountingType, Label
|
from accounting.models import BankAccount, ClubAccount, GeneralJournal, Operation, AccountingType, Company, SimplifiedAccountingType, Label
|
||||||
|
from sas.models import Album, Picture
|
||||||
|
|
||||||
db = MySQLdb.connect(**settings.OLD_MYSQL_INFOS)
|
db = MySQLdb.connect(**settings.OLD_MYSQL_INFOS)
|
||||||
start = datetime.datetime.now()
|
start = datetime.datetime.now()
|
||||||
@ -1024,6 +1025,73 @@ def migrate_etickets():
|
|||||||
print("Etickets migrated at %s" % datetime.datetime.now())
|
print("Etickets migrated at %s" % datetime.datetime.now())
|
||||||
print("Running time: %s" % (datetime.datetime.now()-start))
|
print("Running time: %s" % (datetime.datetime.now()-start))
|
||||||
|
|
||||||
|
def migrate_sas():
|
||||||
|
album_link = {}
|
||||||
|
picture_link = {}
|
||||||
|
FILE_ROOT = "/data/sas/"
|
||||||
|
Album.objects.filter(is_in_sas=True).delete()
|
||||||
|
print("Album/Pictures deleted")
|
||||||
|
cur = db.cursor(MySQLdb.cursors.SSDictCursor)
|
||||||
|
cur.execute("""
|
||||||
|
SELECT *
|
||||||
|
FROM sas_cat_photos
|
||||||
|
""")
|
||||||
|
root = User.objects.filter(username="root").first()
|
||||||
|
for r in cur:
|
||||||
|
try:
|
||||||
|
a = Album(name=to_unicode(r['nom_catph']), owner=root, is_moderated=True, parent=None)
|
||||||
|
a.save()
|
||||||
|
album_link[str(r['id_catph'])] = a.id
|
||||||
|
except Exception as e:
|
||||||
|
print("FAIL to migrate Album: %s" % (repr(e)))
|
||||||
|
cur.execute("""
|
||||||
|
SELECT *
|
||||||
|
FROM sas_cat_photos
|
||||||
|
""")
|
||||||
|
for r in cur:
|
||||||
|
try:
|
||||||
|
p = Album.objects.filter(id=album_link[r['id_catph_parent']]).first()
|
||||||
|
a = Album.objects.filter(id=album_link[r['id_catph']]).first()
|
||||||
|
a.parent = p
|
||||||
|
a.save()
|
||||||
|
except: pass
|
||||||
|
print("Album migrated at %s" % datetime.datetime.now())
|
||||||
|
print("Running time: %s" % (datetime.datetime.now()-start))
|
||||||
|
# cur.execute("""
|
||||||
|
# SELECT *
|
||||||
|
# FROM sas_photos
|
||||||
|
# """)
|
||||||
|
# for r in cur:
|
||||||
|
# try:
|
||||||
|
# user = User.objects.filter(id=r['id_utilisateur']).first() or root
|
||||||
|
# parent = Album.objects.filter(id=album_link[str(r['id_catph'])]).first()
|
||||||
|
|
||||||
|
# p = Picture(
|
||||||
|
# name=to_unicode(str(r['id_photo'])),
|
||||||
|
# owner=user,
|
||||||
|
# is_moderated=True,
|
||||||
|
# is_folder=False,
|
||||||
|
# mime_type="image/jpeg",
|
||||||
|
# parent=parent
|
||||||
|
# )
|
||||||
|
# for f in p._meta.local_fields:
|
||||||
|
# if f.name == "date":
|
||||||
|
# f.auto_now = False
|
||||||
|
# p.date = r['date_ajout_ph'].replace(tzinfo=timezone('Europe/Paris'))
|
||||||
|
# p.save()
|
||||||
|
# picture_link[str(r['id_photo'])] = p.id
|
||||||
|
# except Exception as e:
|
||||||
|
# print("FAIL to migrate Picture: %s" % (repr(e)))
|
||||||
|
cur.close()
|
||||||
|
print("SAS migrated at %s" % datetime.datetime.now())
|
||||||
|
print("Running time: %s" % (datetime.datetime.now()-start))
|
||||||
|
|
||||||
|
# try:
|
||||||
|
# f = File(open(FILE_ROOT + '/' + str(r['banner']) + ".1", 'rb'))
|
||||||
|
# except:
|
||||||
|
# f = None
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
print("Start at %s" % start)
|
print("Start at %s" % start)
|
||||||
# Core
|
# Core
|
||||||
@ -1036,10 +1104,12 @@ def main():
|
|||||||
# migrate_counter()
|
# migrate_counter()
|
||||||
# check_accounts()
|
# check_accounts()
|
||||||
# Accounting
|
# Accounting
|
||||||
migrate_accounting()
|
# migrate_accounting()
|
||||||
# migrate_godfathers()
|
# migrate_godfathers()
|
||||||
# migrate_etickets()
|
# migrate_etickets()
|
||||||
# reset_index('core', 'club', 'subscription', 'accounting', 'eboutic', 'launderette', 'counter')
|
# reset_index('core', 'club', 'subscription', 'accounting', 'eboutic', 'launderette', 'counter')
|
||||||
|
migrate_sas()
|
||||||
|
reset_index('core', 'sas')
|
||||||
end = datetime.datetime.now()
|
end = datetime.datetime.now()
|
||||||
print("End at %s" % end)
|
print("End at %s" % end)
|
||||||
print("Running time: %s" % (end-start))
|
print("Running time: %s" % (end-start))
|
||||||
|
Loading…
Reference in New Issue
Block a user