diff --git a/config.json b/config.json index df131ee..385bcc7 100644 --- a/config.json +++ b/config.json @@ -5,11 +5,11 @@ "company_name": "Footprints AI", "email": "denisa@example.com", "phone": "+40 712 345 678", - "store_name": "Ursus", + "store_name": "Media", "country": "Romania", - "starting_date": "01.01.2027", - "duration": 24, - "store_types": ["convenience", "supermarket", "hypermarket"], + "starting_date": "01.01.2025", + "duration": 36, + "store_types": ["convenience", "minimarket", "supermarket", "hypermarket"], "open_days_per_month": 26, "convenience_store_type": { @@ -23,6 +23,17 @@ "open_days_per_month": 26 }, + "minimarket_store_type": { + "stores_number": 50, + "monthly_transactions": 600000, + "has_digital_screens": true, + "screen_count": 150, + "screen_percentage": 60, + "has_in_store_radio": true, + "radio_percentage": 70, + "open_days_per_month": 26 + }, + "supermarket_store_type": { "stores_number": 80, "monthly_transactions": 450000, diff --git a/index.html b/index.html index e607810..c50da8f 100644 --- a/index.html +++ b/index.html @@ -245,6 +245,9 @@
Convenience
+
+ Minimarket +
Supermarket
@@ -859,6 +862,7 @@ // Ensure store type checkboxes exist ensureCheckboxExists('convenience', 'storeTypes', 'Convenience'); + ensureCheckboxExists('minimarket', 'storeTypes', 'Minimarket'); ensureCheckboxExists('supermarket', 'storeTypes', 'Supermarket'); ensureCheckboxExists('hypermarket', 'storeTypes', 'Hypermarket'); @@ -1237,7 +1241,7 @@ ]; // Also check for store type specific sections - const storeTypes = ['convenience', 'supermarket', 'hypermarket']; + const storeTypes = ['convenience', 'minimarket', 'supermarket', 'hypermarket']; storeTypes.forEach(type => { // Make sure the checkbox element exists const checkbox = document.getElementById(type); diff --git a/update_excel.py b/update_excel.py index 04ccb2c..4ac71d2 100755 --- a/update_excel.py +++ b/update_excel.py @@ -63,27 +63,38 @@ def update_excel_variables(excel_path): 'M37': 1 if user_data.get('convenience_store_type', {}).get('has_in_store_radio', False) else 0, 'N37': user_data.get('convenience_store_type', {}).get('radio_percentage', 0), - # Supermarket store type - 'H38': user_data.get('supermarket_store_type', {}).get('stores_number', 0), - 'C38': user_data.get('supermarket_store_type', {}).get('monthly_transactions', 0), + # Minimarket store type + 'H38': user_data.get('minimarket_store_type', {}).get('stores_number', 0), + 'C38': user_data.get('minimarket_store_type', {}).get('monthly_transactions', 0), # Convert boolean to 1/0 for has_digital_screens - 'I38': 1 if user_data.get('supermarket_store_type', {}).get('has_digital_screens', False) else 0, - 'J38': user_data.get('supermarket_store_type', {}).get('screen_count', 0), - 'K38': user_data.get('supermarket_store_type', {}).get('screen_percentage', 0), + 'I38': 1 if user_data.get('minimarket_store_type', {}).get('has_digital_screens', False) else 0, + 'J38': user_data.get('minimarket_store_type', {}).get('screen_count', 0), + 'K38': user_data.get('minimarket_store_type', {}).get('screen_percentage', 0), # Convert boolean to 1/0 for has_in_store_radio - 'M38': 1 if user_data.get('supermarket_store_type', {}).get('has_in_store_radio', False) else 0, - 'N38': user_data.get('supermarket_store_type', {}).get('radio_percentage', 0), + 'M38': 1 if user_data.get('minimarket_store_type', {}).get('has_in_store_radio', False) else 0, + 'N38': user_data.get('minimarket_store_type', {}).get('radio_percentage', 0), + + # Supermarket store type + 'H39': user_data.get('supermarket_store_type', {}).get('stores_number', 0), + 'C39': user_data.get('supermarket_store_type', {}).get('monthly_transactions', 0), + # Convert boolean to 1/0 for has_digital_screens + 'I39': 1 if user_data.get('supermarket_store_type', {}).get('has_digital_screens', False) else 0, + 'J39': user_data.get('supermarket_store_type', {}).get('screen_count', 0), + 'K39': user_data.get('supermarket_store_type', {}).get('screen_percentage', 0), + # Convert boolean to 1/0 for has_in_store_radio + 'M39': 1 if user_data.get('supermarket_store_type', {}).get('has_in_store_radio', False) else 0, + 'N39': user_data.get('supermarket_store_type', {}).get('radio_percentage', 0), # Hypermarket store type - 'H39': user_data.get('hypermarket_store_type', {}).get('stores_number', 0), - 'C39': user_data.get('hypermarket_store_type', {}).get('monthly_transactions', 0), + 'H40': user_data.get('hypermarket_store_type', {}).get('stores_number', 0), + 'C40': user_data.get('hypermarket_store_type', {}).get('monthly_transactions', 0), # Convert boolean to 1/0 for has_digital_screens - 'I39': 1 if user_data.get('hypermarket_store_type', {}).get('has_digital_screens', False) else 0, - 'J39': user_data.get('hypermarket_store_type', {}).get('screen_count', 0), - 'K39': user_data.get('hypermarket_store_type', {}).get('screen_percentage', 0), + 'I40': 1 if user_data.get('hypermarket_store_type', {}).get('has_digital_screens', False) else 0, + 'J40': user_data.get('hypermarket_store_type', {}).get('screen_count', 0), + 'K40': user_data.get('hypermarket_store_type', {}).get('screen_percentage', 0), # Convert boolean to 1/0 for has_in_store_radio - 'M39': 1 if user_data.get('hypermarket_store_type', {}).get('has_in_store_radio', False) else 0, - 'N39': user_data.get('hypermarket_store_type', {}).get('radio_percentage', 0), + 'M40': 1 if user_data.get('hypermarket_store_type', {}).get('has_in_store_radio', False) else 0, + 'N40': user_data.get('hypermarket_store_type', {}).get('radio_percentage', 0), # On-site channels 'B43': user_data.get('website_visitors', 0),