Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -1,19 +1,12 @@
|
|
| 1 |
import streamlit as st
|
| 2 |
import pandas as pd
|
| 3 |
from simple_salesforce import Salesforce, SalesforceAuthenticationFailed
|
| 4 |
-
from modules.simulator import simulate_data
|
| 5 |
from modules.filters import apply_filters
|
| 6 |
from modules.visuals import display_dashboard, display_charts
|
| 7 |
|
| 8 |
# --- Streamlit Page Setup ---
|
| 9 |
st.set_page_config(page_title="Vedavathi Smart Pole Monitoring", layout="wide")
|
| 10 |
-
st.title("📡 Vedavathi Smart Pole Monitoring -
|
| 11 |
-
|
| 12 |
-
# --- Sidebar Controls ---
|
| 13 |
-
st.sidebar.header("🛠️ Simulation Controls")
|
| 14 |
-
data_source = st.sidebar.radio("Data Source", ["Simulated", "Salesforce"])
|
| 15 |
-
simulate_faults = st.sidebar.checkbox("Simulate Random Faults", value=True)
|
| 16 |
-
num_poles = st.sidebar.slider("Number of Poles", 5, 50, 10) if data_source == "Simulated" else None
|
| 17 |
|
| 18 |
# --- Salesforce Connection ---
|
| 19 |
def connect_to_salesforce():
|
|
@@ -78,16 +71,16 @@ def fetch_salesforce_data(sf):
|
|
| 78 |
st.error(f"Error fetching Salesforce data: {e}")
|
| 79 |
return pd.DataFrame()
|
| 80 |
|
| 81 |
-
# --- Load Data ---
|
| 82 |
-
sf = connect_to_salesforce()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 83 |
|
| 84 |
-
if
|
| 85 |
-
|
| 86 |
-
if df.empty:
|
| 87 |
-
st.stop()
|
| 88 |
-
elif data_source == "Simulated":
|
| 89 |
-
df = simulate_data(num_poles, simulate_faults)
|
| 90 |
-
else:
|
| 91 |
st.stop()
|
| 92 |
|
| 93 |
# --- Sidebar Filters ---
|
|
@@ -113,4 +106,4 @@ display_dashboard(filtered_df)
|
|
| 113 |
st.subheader("📋 Pole Monitoring Table")
|
| 114 |
st.dataframe(filtered_df, use_container_width=True)
|
| 115 |
|
| 116 |
-
display_charts(filtered_df)
|
|
|
|
| 1 |
import streamlit as st
|
| 2 |
import pandas as pd
|
| 3 |
from simple_salesforce import Salesforce, SalesforceAuthenticationFailed
|
|
|
|
| 4 |
from modules.filters import apply_filters
|
| 5 |
from modules.visuals import display_dashboard, display_charts
|
| 6 |
|
| 7 |
# --- Streamlit Page Setup ---
|
| 8 |
st.set_page_config(page_title="Vedavathi Smart Pole Monitoring", layout="wide")
|
| 9 |
+
st.title("📡 Vedavathi Smart Pole Monitoring - Salesforce Live Monitoring")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
# --- Salesforce Connection ---
|
| 12 |
def connect_to_salesforce():
|
|
|
|
| 71 |
st.error(f"Error fetching Salesforce data: {e}")
|
| 72 |
return pd.DataFrame()
|
| 73 |
|
| 74 |
+
# --- Connect and Load Data ---
|
| 75 |
+
sf = connect_to_salesforce()
|
| 76 |
+
|
| 77 |
+
if not sf:
|
| 78 |
+
st.stop()
|
| 79 |
+
|
| 80 |
+
df = fetch_salesforce_data(sf)
|
| 81 |
|
| 82 |
+
if df.empty:
|
| 83 |
+
st.warning("No data found from Salesforce.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 84 |
st.stop()
|
| 85 |
|
| 86 |
# --- Sidebar Filters ---
|
|
|
|
| 106 |
st.subheader("📋 Pole Monitoring Table")
|
| 107 |
st.dataframe(filtered_df, use_container_width=True)
|
| 108 |
|
| 109 |
+
display_charts(filtered_df)
|