mirror of
https://github.com/nottinghamtec/PyRIGS.git
synced 2026-01-26 18:02:18 +00:00
Merge branch 'master' of https://bitbucket.org/nottinghamtec/pyrigs
This commit is contained in:
@@ -95,6 +95,11 @@ ACCOUNT_ACTIVATION_DAYS = 7
|
|||||||
EMAILER_TEST = False
|
EMAILER_TEST = False
|
||||||
if not DEBUG or EMAILER_TEST:
|
if not DEBUG or EMAILER_TEST:
|
||||||
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
|
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
|
||||||
|
EMAIL_HOST = 'server.techost.co.uk'
|
||||||
|
EMAIL_PORT = 465
|
||||||
|
EMAIL_HOST_USER = 'tec'
|
||||||
|
EMAIL_HOST_PASSWORD = '***REMOVED***'
|
||||||
|
DEFAULT_FROM_EMAIL = 'rigs@nottinghamtec.co.uk'
|
||||||
else:
|
else:
|
||||||
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
|
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
|
||||||
|
|
||||||
@@ -138,4 +143,4 @@ TEMPLATE_DIRS = (
|
|||||||
os.path.join(BASE_DIR, 'templates'),
|
os.path.join(BASE_DIR, 'templates'),
|
||||||
)
|
)
|
||||||
|
|
||||||
TERMS_OF_HIRE_URL = "http://dev.nottinghamtec.co.uk/wp-content/uploads/2014/11/terms.pdf"
|
TERMS_OF_HIRE_URL = "http://dev.nottinghamtec.co.uk/wp-content/uploads/2014/11/terms.pdf"
|
||||||
|
|||||||
46
RIGS/migrations/0016_auto_20150127_1905.py
Normal file
46
RIGS/migrations/0016_auto_20150127_1905.py
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import models, migrations
|
||||||
|
from django.conf import settings
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('RIGS', '0015_auto_20141208_0233'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Invoice',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
|
||||||
|
('invoice_date', models.DateField(auto_now_add=True)),
|
||||||
|
('void', models.BooleanField()),
|
||||||
|
('event', models.OneToOneField(to='RIGS.Event')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
},
|
||||||
|
bases=(models.Model,),
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Payment',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
|
||||||
|
('date', models.DateField()),
|
||||||
|
('amount', models.DecimalField(help_text=b'Please use ex. VAT', max_digits=10, decimal_places=2)),
|
||||||
|
('method', models.CharField(max_length=2, choices=[(b'C', b'Cash'), (b'I', b'Internal'), (b'E', b'External'), (b'SU', b'SU Core'), (b'M', b'Members')])),
|
||||||
|
('invoice', models.ForeignKey(to='RIGS.Invoice')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
},
|
||||||
|
bases=(models.Model,),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='event',
|
||||||
|
name='mic',
|
||||||
|
field=models.ForeignKey(related_name='event_mic', verbose_name=b'MIC', blank=True, to=settings.AUTH_USER_MODEL, null=True),
|
||||||
|
preserve_default=True,
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -61,7 +61,7 @@ def import_users(delete=False):
|
|||||||
|
|
||||||
def import_people(delete=False):
|
def import_people(delete=False):
|
||||||
if(delete):
|
if(delete):
|
||||||
models.Event.objects.get(is_rig=False).delete()
|
models.Person.objects.all().delete()
|
||||||
cursor = setup_cursor()
|
cursor = setup_cursor()
|
||||||
if cursor is None:
|
if cursor is None:
|
||||||
return
|
return
|
||||||
@@ -69,15 +69,20 @@ def import_people(delete=False):
|
|||||||
cursor.execute(sql)
|
cursor.execute(sql)
|
||||||
resp = cursor.fetchall()
|
resp = cursor.fetchall()
|
||||||
for row in resp:
|
for row in resp:
|
||||||
email = row[3]
|
pk=row[0]
|
||||||
|
name=clean_ascii(row[1])
|
||||||
|
phone=clean_ascii(row[2].replace(' ',''))
|
||||||
|
address=clean_ascii(row[4])
|
||||||
|
email = clean_ascii(row[3])
|
||||||
fix_email(email)
|
fix_email(email)
|
||||||
|
|
||||||
notes = ""
|
notes = ""
|
||||||
if row[5] != "Normal":
|
if row[5] != "Normal":
|
||||||
notes = row[5]
|
notes = row[5]
|
||||||
|
|
||||||
person, created = models.Person.objects.get_or_create(pk=row[0], name=row[1], phone=row[2], email=email,
|
print("Trying %s %s %s" % (pk, name, phone))
|
||||||
address=row[4], notes=notes)
|
person, created = models.Person.objects.get_or_create(pk=pk, name=name, phone=phone, email=email,
|
||||||
|
address=address, notes=notes)
|
||||||
if created:
|
if created:
|
||||||
print("Created: " + person.__str__())
|
print("Created: " + person.__str__())
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
@@ -88,7 +93,7 @@ def import_people(delete=False):
|
|||||||
|
|
||||||
def import_organisations(delete=False):
|
def import_organisations(delete=False):
|
||||||
if(delete):
|
if(delete):
|
||||||
models.Event.objects.get(is_rig=False).delete()
|
models.Organisation.objects.all().delete()
|
||||||
cursor = setup_cursor()
|
cursor = setup_cursor()
|
||||||
if cursor is None:
|
if cursor is None:
|
||||||
return
|
return
|
||||||
@@ -112,7 +117,7 @@ def import_organisations(delete=False):
|
|||||||
|
|
||||||
def import_vat_rates(delete=False):
|
def import_vat_rates(delete=False):
|
||||||
if(delete):
|
if(delete):
|
||||||
models.Event.objects.get(is_rig=False).delete()
|
models.VatRate.objects.all().delete()
|
||||||
cursor = setup_cursor()
|
cursor = setup_cursor()
|
||||||
if cursor is None:
|
if cursor is None:
|
||||||
return
|
return
|
||||||
@@ -136,19 +141,20 @@ def import_venues(delete=False):
|
|||||||
cursor = setup_cursor()
|
cursor = setup_cursor()
|
||||||
if cursor is None:
|
if cursor is None:
|
||||||
return
|
return
|
||||||
sql = """SELECT `venue`, `threephasepower` FROM `eventdetails` GROUP BY `venue` WHERE `venue` IS NOT NULL"""
|
sql = """SELECT `venue`, `threephasepower` FROM `eventdetails` WHERE `venue` IS NOT NULL GROUP BY `venue`"""
|
||||||
cursor.execute(sql)
|
cursor.execute(sql)
|
||||||
for row in cursor.fetchall():
|
for row in cursor.fetchall():
|
||||||
print(("Searching for %s", row[0]))
|
name = row[0].strip()
|
||||||
|
print(("Searching for %s", name))
|
||||||
try:
|
try:
|
||||||
object = models.Venue.objects.get(name__iexact=row[0])
|
object = models.Venue.objects.get(name__iexact=name)
|
||||||
if not object.three_phase_available and row[1]:
|
if not object.three_phase_available and row[1]:
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
object.three_phase_available = row[1]
|
object.three_phase_available = row[1]
|
||||||
object.save()
|
object.save()
|
||||||
except ObjectDoesNotExist:
|
except ObjectDoesNotExist:
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
object = models.Venue(name=row[0], three_phase_available=row[1])
|
object = models.Venue(name=name, three_phase_available=row[1])
|
||||||
object.save()
|
object.save()
|
||||||
|
|
||||||
def import_rigs(delete=False):
|
def import_rigs(delete=False):
|
||||||
@@ -157,7 +163,7 @@ def import_rigs(delete=False):
|
|||||||
cursor = setup_cursor()
|
cursor = setup_cursor()
|
||||||
if cursor is None:
|
if cursor is None:
|
||||||
return
|
return
|
||||||
sql = """SELECT r.id, event, person_id, organisation_id, venue, description, status, start_date, start_time, end_date, end_time, access_date, access_time, meet_date, meet_time, meet_info, based_on_id, based_on_type, dry_hire, user_id, payment_method, order_no, payment_received, collectorsid FROM eventdetails AS e INNER JOIN rigs AS r ON e.describable_id = r.id WHERE describable_type = 'Rig' AND venue IS NOT NULL"""
|
sql = """SELECT r.id, event, person_id, organisation_id, venue, description, status, start_date, start_time, end_date, end_time, access_date, access_time, meet_date, meet_time, meet_info, based_on_id, based_on_type, dry_hire, user_id, payment_method, order_no, payment_received, collectorsid FROM eventdetails AS e INNER JOIN rigs AS r ON e.describable_id = r.id WHERE describable_type = 'Rig' AND `venue` IS NOT NULL"""
|
||||||
cursor.execute(sql)
|
cursor.execute(sql)
|
||||||
for row in cursor.fetchall():
|
for row in cursor.fetchall():
|
||||||
print(row)
|
print(row)
|
||||||
@@ -166,7 +172,7 @@ def import_rigs(delete=False):
|
|||||||
organisation = models.Organisation.objects.get(pk=row[3])
|
organisation = models.Organisation.objects.get(pk=row[3])
|
||||||
else:
|
else:
|
||||||
organisation = None
|
organisation = None
|
||||||
venue = models.Venue.objects.get(name__iexact=row[4])
|
venue = models.Venue.objects.get(name__iexact=row[4].strip())
|
||||||
status = {
|
status = {
|
||||||
'Booked': models.Event.BOOKED,
|
'Booked': models.Event.BOOKED,
|
||||||
'Provisional': models.Event.PROVISIONAL,
|
'Provisional': models.Event.PROVISIONAL,
|
||||||
@@ -242,7 +248,10 @@ def import_eventitem(delete=True):
|
|||||||
|
|
||||||
def import_nonrigs(delete=False):
|
def import_nonrigs(delete=False):
|
||||||
if(delete):
|
if(delete):
|
||||||
models.Event.objects.get(is_rig=False).delete()
|
try:
|
||||||
|
models.Event.objects.get(is_rig=False).delete()
|
||||||
|
except:
|
||||||
|
pass
|
||||||
cursor = setup_cursor()
|
cursor = setup_cursor()
|
||||||
if cursor is None:
|
if cursor is None:
|
||||||
return
|
return
|
||||||
@@ -250,26 +259,21 @@ def import_nonrigs(delete=False):
|
|||||||
cursor.execute(sql)
|
cursor.execute(sql)
|
||||||
for row in cursor.fetchall():
|
for row in cursor.fetchall():
|
||||||
print(row)
|
print(row)
|
||||||
|
mic = models.Profile.objects.get(pk=row[6])
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
event = models.Event()
|
event = models.Event(pk=None, name=row[0], start_date=row[1], start_time=row[2], end_date=row[3], end_time=row[4], description=row[5], mic=mic)
|
||||||
event.name = row[0]
|
print(event)
|
||||||
event.start_date = row[1]
|
|
||||||
event.start_time = row[2]
|
|
||||||
event.end_date = row[3]
|
|
||||||
event.end_time = row[4]
|
|
||||||
event.description = row[5]
|
|
||||||
event.mic = models.Profile.objects.get(pk=row[6])
|
|
||||||
event.save()
|
event.save()
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
import_users()
|
# import_users()
|
||||||
import_people()
|
# import_people(True)
|
||||||
import_organisations()
|
# import_organisations(True)
|
||||||
import_vat_rates()
|
# import_vat_rates(True)
|
||||||
import_venues(False)
|
# import_venues(True)
|
||||||
import_rigs(False)
|
# import_rigs(True)
|
||||||
import_eventitem(False)
|
# import_eventitem(True)
|
||||||
import_nonrigs(False)
|
import_nonrigs(True)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
Reference in New Issue
Block a user