def event_insert_item(self, item): cursor = self.db.cursor() rank = item['rank'] artist_event = item['artist_event'] venue = item['venue'] try: city_list = BoxString.normalize_city(item['city']) city = city_list[0] state = city_list[1] date_list = item['date'] gross_sales_list = BoxString.normalize_prices(item['gross_sales']) sale = gross_sales_list[0] attend_cap = BoxString.normalize_attend_capacity(item['attend_cap']) attend = attend_cap[0] capacity = attend_cap[1] shows_sellout_list = BoxString.normalize_shows_sellout(item['shows_sellout']) show = shows_sellout_list[0] sellout = shows_sellout_list[1] update_date = item["create_date"] check_query = """SELECT COUNT(*) """\ """FROM boxoffice_app_event """ \ """WHERE id = (SELECT boxoffice_app_event.id """ \ """FROM boxoffice_app_event """ \ """WHERE artist_event_id=(SELECT id FROM boxoffice_app_artistevent where name = "%s") """ \ """AND venue_id=(SELECT id FROM boxoffice_app_venue where name = "%s") """ \ """AND city_id=(SELECT id FROM boxoffice_app_city where name = "%s" AND state = "%s") """ \ """AND dates = "%s" ) """ \ % (artist_event, venue, city, state, date_list) cursor.execute(check_query) for row in cursor: if row[0] > 0: print "%s exist in Event" % '%s / %s / %s / %s' % (artist_event, city, venue, date_list) else: query = """INSERT INTO boxoffice_app_event VALUES (""" \ """NULL, """ \ """(SELECT id FROM boxoffice_app_artistevent WHERE name = "%s"), """ \ """(SELECT id FROM boxoffice_app_city WHERE name = "%s" AND state = "%s"), """ \ """(SELECT id FROM boxoffice_app_venue WHERE name = "%s"), "%s", %s, %s, %s, %s, %s, "%s", "%s");""" \ % (artist_event, city, state, venue, sale, attend, capacity, show, sellout, rank, date_list, update_date) cursor.execute(query) self.db.commit() except ValueError as e: self.create_error_log('Event', item) except Exception as e: print 'Error ----------------------%s--------------------------------------------------' % 'Event' print e.args print item self.create_error_log('Event', item) raise Exception("Event Insert Error")
def event_prices_insert_item(self, item): cursor = self.db.cursor() try: artist_event = item['artist_event'] venue = item['venue'] city_list = BoxString.normalize_city(item['city']) city = city_list[0] state = city_list[1] date_list = item['date'] update_date = item["create_date"] prices_list = BoxString.normalize_prices(item['prices']) for price in prices_list: check_query = """SELECT COUNT(*) """ \ """FROM boxoffice_app_eventprice """ \ """WHERE event_id = (SELECT boxoffice_app_event.id """ \ """FROM boxoffice_app_event """ \ """WHERE artist_event_id=(SELECT id FROM boxoffice_app_artistevent where name = "%s") """ \ """AND venue_id=(SELECT id FROM boxoffice_app_venue where name = "%s") """ \ """AND city_id=(SELECT id FROM boxoffice_app_city where name = "%s" AND state = "%s") """ \ """AND dates = "%s" ) """ \ """AND price_id = (SELECT id """ \ """FROM boxoffice_app_price """ \ """WHERE price = "%s"); """ \ % (artist_event, venue, city, state, date_list, price) cursor.execute(check_query) for row in cursor: if row[0] > 0: print "%s exist in Event_Prices" % '%s-%s' % (artist_event, price) else: query = """INSERT INTO boxoffice_app_eventprice VALUES (NULL, """ \ """(SELECT boxoffice_app_event.id """ \ """FROM boxoffice_app_event """ \ """WHERE artist_event_id=(SELECT id FROM boxoffice_app_artistevent where name = "%s") """ \ """AND venue_id=(SELECT id FROM boxoffice_app_venue where name = "%s") """ \ """AND city_id=(SELECT id FROM boxoffice_app_city where name = "%s" AND state = "%s") """ \ """AND dates = "%s" ), """ \ """(SELECT id """ \ """FROM boxoffice_app_price """ \ """WHERE price = "%s")); """ \ % (artist_event, venue, city, state, date_list, price) cursor.execute(query) self.db.commit() except ValueError as e: self.create_error_log('Event_Prices', item) except Exception as e: print 'Error ----------------------%s--------------------------------------------------' % 'Event_Prices' print e.args print item self.create_error_log('Event_Prices', item)
def dates_insert_item(self, item): cursor = self.db.cursor() artist_event = item['artist_event'] venue = item['venue'] city_list = BoxString.normalize_city(item['city']) city = city_list[0] state = city_list[1] date_list = item['date'] update_date = item['create_date'] parser = BoxDateParser() array = parser.get_date_string(date_list) if array == None: self.create_error_log('Date', item) else: try: for dateObj in array: for date in dateObj[2]: check_query = """SELECT COUNT(*) """ \ """FROM boxoffice_app_date """ \ """WHERE event_id = (SELECT boxoffice_app_event.id """ \ """FROM boxoffice_app_event """ \ """WHERE artist_event_id=(SELECT id FROM boxoffice_app_artistevent where name = "%s") """ \ """AND venue_id=(SELECT id FROM boxoffice_app_venue where name = "%s") """ \ """AND city_id=(SELECT id FROM boxoffice_app_city where name = "%s" AND state = "%s") """ \ """AND dates = "%s" ) """ \ """AND event_date = "%s-%s-%s"; """ \ % (artist_event, venue, city, state, date_list, dateObj[0], dateObj[1], date) cursor.execute(check_query) for row in cursor: if row[0] > 0: print "%s exist in Dates" % '%s-%s-%s' % (dateObj[0], dateObj[1], date) else: query = """INSERT INTO boxoffice_app_date VALUES (NULL, """ \ """(SELECT boxoffice_app_event.id """ \ """FROM boxoffice_app_event """ \ """WHERE artist_event_id=(SELECT id FROM boxoffice_app_artistevent where name = "%s") """ \ """AND venue_id=(SELECT id FROM boxoffice_app_venue where name = "%s") """ \ """AND city_id=(SELECT id FROM boxoffice_app_city where name = "%s" AND state = "%s") """ \ """AND dates = "%s" ), "%s-%s-%s"); """ \ % (artist_event, venue, city, state, date_list, dateObj[0], dateObj[1], date) cursor.execute(query) self.db.commit() except ValueError as e: self.create_error_log('Date', item) except Exception as e: print 'Error ----------------------%s--------------------------------------------------' % 'Date' print e.args print item self.create_error_log('Date', item)
def prices_insert_item(self, item): cursor = self.db.cursor() prices_list = BoxString.normalize_prices(item['prices']) for price in prices_list: check_query = """SELECT COUNT(*) FROM boxoffice_app_price WHERE price = "%s";""" % price cursor.execute(check_query) for row in cursor: if row[0] > 0: print "%s exist in Prices" % price else: query = """INSERT INTO boxoffice_app_price (price) VALUES ("%s");""" % price cursor.execute(query) self.db.commit()
def city_insert_item(self, item): cursor = self.db.cursor() city_list = BoxString.normalize_city(item['city']) city = city_list[0] state = city_list[1] check_query = """SELECT COUNT(*) FROM boxoffice_app_city WHERE name = "%s" AND state = "%s";""" % (city, state) cursor.execute(check_query) for row in cursor: if row[0] > 0: print "%s exist in City" % '%s-%s' % (city, state) else: query = """INSERT INTO boxoffice_app_city (name, state) VALUES ("%s", "%s");""" % (city, state) cursor.execute(query) self.db.commit()